js的資料型別:
包含兩種資料型別:基本資料型別(boolean,null,undefined,number,string,symbol)和引用資料型別(object);
這要是面試的時候問你我覺得答上來沒問題,不過要是深入的去問你你就可能突然懵了。。。
基本資料型別:
儲存在棧中的簡單資料段;按值訪問,操作的就是實際值;從乙個變數複製到另外乙個變數的時候會在棧中創造乙個新值,兩個相互不干擾;
引用資料型別:
儲存在堆中的物件,變數中儲存的實際是乙個指標;按引用訪問,要先在棧中找到位址,再訪問堆中的值;引用型別值是複製的指標,所以都是同乙個物件,一改全改;
下面來具體說說型別:
boolean:
布林型別,就是兩個值true,false,兩個邏輯實體。
null:
null型別是只有乙個值的:null,值null是js字面量表示空值,物件沒有呈現(no object value is present);
undefined:
注意說如果是小寫的字母開頭就是說是undefined的值,unefined。大寫的才是資料型別。
在js**中最常見的變數值怕就是undefined了,乙個沒初始化的值是undefined,乙個沒有傳入實參的形參是undefined。函式沒有返回值,預設是undefined。
ps:上述兩者的區別:
null是乙個字面量,而undefined是乙個全域性物件。
null是乙個表示無的物件,轉成值是0,但是undefined是表示無的原始值,轉成數值為nan。
當宣告的白能量沒初始化的時候就是undefined,null可以表示乙個尚未存在的物件。
number:
數字型別就是乙個整數
string:
js用於表示文字型別的。
symbol:
說不說都行,這個是es6新定義的,symbol能夠實現針對物件狀態的訪問控制,允許用string或者是symbol作為鍵來訪問。
符號型別是唯一的並且不可修改的,並且可以用來作為object的key的值;符號物件就是乙個符號,原始資料型別的隱式物件包裝器;
前端面試題整理 1
塊級元素 div,section,ul,dl,ol,li,dt,dd,p,h1 h6,n 行內元素 又叫內聯 內嵌元素 span,em,time,mark,strong,a 5 個 html5 新增的元素 section,n time,mark,header,footer 5 個 css3 新增屬性...
前端面試題
sprites是什麼和為什麼要使用他們?css 精靈 把一堆小的整合到一張大的上,減輕伺服器對的請求數量 有可能替代sprites的方法是什麼?svg圖示,字型圖示,字元編碼等等。1 在div排版的時候,假設現在是100px的寬,我在盒子左側用padding left留個10px的白,div就撐開了...
前端面試題
行內元素有哪些?塊級元素有哪些?空 void 元素有哪些?link和 import的區別是?常見相容性問題?含移動端 html5的離線儲存?描寫一段語義化的html 吧 html5的form如何關閉自動完成功能?什麼是閉包 closure 為什麼要用?localstorage和sessionstor...