js中數據類型包含基本數據類型和引用類型,基本類型包括:string、null、undefined、number、boolean。引用類型即是對象比如:array 、function以及自定義對象等等。
在js中我們可以給引用類型動態添加屬性:
1 var myObj=new Object(); 2 myObj.name='tom'; 3 console.log(myObj.name);
輸出:
也就是說我們可以動態給引用類型添加屬性。那基本類型呢?
我們可以動態給他們添加屬性,雖然不報錯但是當我們調用的時候,返回時undefined。
1 let myStr='test'; 2 myStr.name='test'; 3 console.log(myStr.name);
輸出:
雖然我們可以給基本類型動態添加屬性,但是在我們在調用這個屬性會丟失,返回undefined。所以基本不可以動態添加屬性。
這個問題在面試的過程中會遇到。實際在項目中不會去這么寫。