打印的結果是而不是{name:'1222'}
一個簡單的js問題
米脂
2019-02-12 23:15:49
TA貢獻1825條經驗 獲得超6個贊
首先基本類型都是沒有屬性的,
像 var a = 10; var b = "abc";
你之所以可以訪問 a.fixed方法, b.substr方法, 是因為JS引擎會把基本類型數據進行了一次包裝, 比如 a 會包裝 Number(a), b會包裝成String(b), 這樣就數字就能夠使用fixed方法,字符串能夠使用substr。
給數字和字符串添加屬性是不會生效的, a.name ='this is your name' 其實是在給 Number(a)對象添加nane屬性。
每次包裝都會產生一個新的對象,新對象不存在name,因此訪問a.name 返回 undefined。 console.log(a)就只是顯示a的數值
舉報