常見6種類型
JavaScript 語(yǔ)言的每一個(gè)值啄寡,都屬于某一種數(shù)據(jù)類型土全。JavaScript 的數(shù)據(jù)類型报嵌,共有六種旷祸。(ES6 又新增了第七種 Symbol 類型的值)
- 數(shù)值(number):整數(shù)和小數(shù)(比如1和3.14)
- 字符串(string):字符組成的文本(比如"Hello World")
- 布爾值(boolean):true(真)和false(假)兩個(gè)特定值
- undefined:表示“未定義”或不存在糜颠,即由于目前沒(méi)有定義汹族,所以此處暫時(shí)沒(méi)有任何值
- null:表示無(wú)值,即此處的值就是“無(wú)”的狀態(tài)其兴。
- 對(duì)象(object):各種值組成的集合
通常顶瞒,我們將數(shù)值、字符串元旬、布爾值稱為原始類型(primitive type)的值,而將對(duì)象稱為合成類型(complex type)的值榴徐。至于undefined和null,一般將它們看成兩個(gè)特殊值匀归。
對(duì)象又可以分成三個(gè)子類型坑资。
- 狹義的對(duì)象(object)
- 數(shù)組(array)
- 函數(shù)(function)
typeof運(yùn)算符
- typeof運(yùn)算符
- instanceof運(yùn)算符
- Object.prototype.toString方法
typeof運(yùn)算符可以返回一個(gè)值的數(shù)據(jù)類型,可以用來(lái)檢查一個(gè)沒(méi)有聲明的變量,而不報(bào)錯(cuò)
布爾值
布爾值代表“真”(true)和“假”(false)兩個(gè)狀態(tài)穆端。
下列運(yùn)算符會(huì)返回布爾值:
- 兩元邏輯運(yùn)算符: && (And)袱贮,|| (Or)
- 前置邏輯運(yùn)算符: ! (Not)
- 相等運(yùn)算符:===,!==体啰,==攒巍,!=
- 比較運(yùn)算符:>,>=荒勇,<柒莉,<=
如果JavaScript預(yù)期某個(gè)位置應(yīng)該是布爾值,會(huì)將該位置上現(xiàn)有的值自動(dòng)轉(zhuǎn)為布爾值沽翔。
轉(zhuǎn)換規(guī)則是除了下面六個(gè)值被轉(zhuǎn)為false兢孝,其他值都視為true。
- undefined
- null
- false
- 0
- NaN
- ""或''(空字符串)//空數(shù)組([])和空對(duì)象({})對(duì)應(yīng)的布爾值,都是true.
布爾值往往用于程序流程流程的控制