課程
/前端開發
/JavaScript
/JavaScript深入淺出
沒看懂?。。。?/p>
為什么基本類型不是沒有屬性嗎
如果 ?var str = "" ? 是不是也是新建一個變量類型為字符串的意思?
????????
2016-07-22
源自:JavaScript深入淺出 1-4
正在回答
剛發現漏了一問沒回答,補充一下,var str="",""表示空字符串,這一句的意思就是聲明一個值為空的字符串類型變量str。
基本類型是沒有屬性的,但是在對string/number/boolean進行訪問和設置屬性這樣的操作時,js會將其臨時轉換為對應的包裝對象類型String/Number/Boolean,這樣就可以訪問或設置屬性了,正如視頻說的例子:
????var a = "string";????//基礎類型
? ? alert(a.length); //6,訪問length屬性時a被轉換為包裝對象類型
????a.t = 3;//添加t屬性,這時a被轉換為包裝對象類型
????alert(a.t); //undefined,由于上面的操作已完成,臨時對象被銷毀,a是基礎類型,沒有屬性
可以這么理解,基本類型string有對應的包裝對象String,就可以使用包裝對象的屬性和方法。
舉報
由淺入深學習JS語言特性,且解析JS常見誤區,從入門到掌握
3 回答沒看懂執行順序
2 回答bar.call(7)這個沒看懂
1 回答var str="string" 沒看懂
2 回答arguments沒有聽懂。。。。。
3 回答看不懂寫的是啥
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-09-24
剛發現漏了一問沒回答,補充一下,var str="",""表示空字符串,這一句的意思就是聲明一個值為空的字符串類型變量str。
2016-07-22
基本類型是沒有屬性的,但是在對string/number/boolean進行訪問和設置屬性這樣的操作時,js會將其臨時轉換為對應的包裝對象類型String/Number/Boolean,這樣就可以訪問或設置屬性了,正如視頻說的例子:
????var a = "string";????//基礎類型
? ? alert(a.length); //6,訪問length屬性時a被轉換為包裝對象類型
????a.t = 3;//添加t屬性,這時a被轉換為包裝對象類型
????alert(a.t); //undefined,由于上面的操作已完成,臨時對象被銷毀,a是基礎類型,沒有屬性
2016-07-22
可以這么理解,基本類型string有對應的包裝對象String,就可以使用包裝對象的屬性和方法。