前言
本篇簡單的整理一下型別的筆記。
JavaScript 的型別
在 JavaScript 中分為兩種型別:
- 原始型別
- 物件型別
原始型別
原始型別中又有六種,分別是以下:
string、number、boolean、null、undefined、symbol(ES6)
原始型別是沒有屬性的,所以也無法賦予屬性,我們來看看下面的例子:
1 | var a = 1; |
因為原始型別無法賦予屬性,所以這裡我們會得到 undefined 這個結果。
另外,如果透過建構式的方式來宣告原始型別的話會導致型別轉換,請看下面這個範例:
1 | var a = new Number(1); //建構式 |
我們可以發現 a
的型別變成了物件,所以一般不建議用建構式的方式來宣告,這樣可能會導致後續判斷時發生錯誤。
物件型別
除了上面的六種型別外,其他的都是物件型別,包含陣列及函式也都是物件型別。
動態型別
JavaScript 屬於動態型別,也就是會根據使用狀況改變型別,我們看看下面的範例:
1 | var a = '1'; |
可以看到同樣是 a
但是根據不同的狀況會從 string
變成 number
又變回 string