JS 有五種簡(jiǎn)單數(shù)據(jù)類型(基本數(shù)據(jù)類型):number,string,Boolean,null,undefined.
還有兩種復(fù)雜數(shù)據(jù)類型——symbol(這里不做多介紹)和Object督弓,對(duì)象本質(zhì)上是由一組無序的名值對(duì)組成的捎琐,ECMAScring不支持任何創(chuàng)建自定義類型的機(jī)制凌那,而所有值最終都將是上述7種數(shù)據(jù)類型之一。
1、 number
- 整數(shù)和小數(shù):1 1.1 .1
- 科學(xué)記數(shù)法:1.23e2
- 二進(jìn)制:0b11
- 八進(jìn)制:011(后來 ES5 添加了 0o11 語法)
- 十六進(jìn)制:0x11
2馏锡、string
- 空字符串:''
- 多行字符串:
var s = '12345' +
'67890' // 無回車符號(hào)
或
var s =12345 67890
// 含回車符號(hào)
3握童、boolean
- boolean 的取值
- 只有兩個(gè)值:true 和 false
- a && b 在 a 和 b 都為 true 時(shí),取值為 true也物;否則為 false
- a || b 在 a 和 b 都為 false 時(shí)宫屠,取值為 false;否則為 true
4滑蚯、undefined
- 只有一個(gè)值浪蹂,即undefined值。使用var聲明了變量告材,但未給變量初始化值坤次,那么這個(gè)變量的值就是undefined。
5斥赋、null
- null類型被看做空對(duì)象指針缰猴,前文說到null類型也是空的對(duì)象引用。只有一個(gè)值疤剑,即null值滑绒,所以闷堡,在你 用typeof 操作符去檢測(cè)null類型的值時(shí),結(jié)果是object類型蹬挤。
6缚窿、object
- object 就是上面幾種基本類型(無序地)組合在一起
- object 里面可以有 object
var person = {
name: 'Frank',
'child': {
name: 'Jack'
}, // 最后這個(gè)逗號(hào)可有可無
}
- object 的 key 一律是字符串,不存在其他類型的 key
- object[''] 是合法的
- object['key'] 可以寫作 object.key
- 注意 object.key 與 object[key] 不同
- delete object['key']
- 'key' in object
注意 function 并不是一個(gè)類型
typeof操作符可以檢測(cè)變量的數(shù)據(jù)類型(輸出的是一個(gè)關(guān)于數(shù)據(jù)類型的字符串)焰扳。
數(shù)值轉(zhuǎn)換:
- Number()轉(zhuǎn)型函數(shù)倦零,可以用于任何數(shù)據(jù)類型;
- parseInt()吨悍,將值轉(zhuǎn)換為整型扫茅,用的比較多;
- parseFloat()育瓜;將值轉(zhuǎn)換為浮點(diǎn)型葫隙。