更新時間:2023-06-16 來源:黑馬程序員 瀏覽量:
在開發(fā)中,當不確定一個變量或值是什么數據類型的時候,可以利用 typeof 運算符進行數據類型檢測。示例代碼如下。
console.log(typeof 12); // 輸出結果:number console.log(typeof!12'); // 輸出結果:string console.log(typeof true); // 輸出結果:boolean console.log (typeof undefined) ; // 輸出結果:undefined console.log(typeof null); // 輸出結果 :object
在上述示例中,typeof檢測 null 值時返回的是 object,而不是 null,這是 JavaScript 最初實現時的歷史遺留問題,后來被ECMAScript沿用下來。
使用typeof可以很方便地檢測變量的數據類型,示例代碼如下。
var age= prompt請輸人您的年齡); console.og(age) console.log(typeof age);
上述代碼執(zhí)行后,如果用戶什么都不輸入,單擊“確定”按鈕,則age 的值為空字符串類型為string;如果單擊“取消”按鈕,則age的值為null,類型為 object;如果輸入的是-個數字,則age的值是用字符串保存的數字,類型為string。
typeof運算符的返回結果是一個字符串,可以使用比較運算符“==”來判斷typeof返回的檢測結果是否符合預期,示例代碼如下。
vara=112'; console.log(typeof a==istring'); // 輸出結果 :true console.log(typeof a== inumber'); // 輸出結果:false
在上述代碼中,“typeofa”的返回結果是string,在與字符串string 比較時,結果為true,表示a是string類型;與number 比較時,結果為false,表示a不是number類型。
字面量
在閱讀JavaScript 的一些教程、文檔時,我們經常會遇到字面量的概念。字面量是指源代碼中的固定值的表示法,簡單來說,就是用字面量來表示如何在代碼中表達這個值。通過字面量,我們可以很容易地看出來它是哪種類型的值。常見的字面量如下。
數字字面量:8、9、10 字符串字面量:!hello'、"world" 布爾字面量:true、false 數組字面量(在后面會學到):[1,2,3] 對象字面量(在后面會學到):{ name:·小明,age:18 }