初學(xué)數(shù)據(jù)類型(1)

JavaScript數(shù)據(jù)類型

  • 數(shù)值:整數(shù)和小數(shù)
  • 字符串:
  • 布爾值:true和false
  • undefined:表示未定義或者不存在
  • null:空值
  • 對象:值的集合乡翅,簡單類型的組合
    對象又分成:
    1.狹義的對象(object)
    2.數(shù)組(array)
    3.函數(shù)(function)
  • symbol:(ES6新增)

數(shù)值

  • 0b開頭的表示二進(jìn)制
  • 0開頭的表示八進(jìn)制
  • 0x開頭的表示十六進(jìn)制

JavaScript 會自動將數(shù)值轉(zhuǎn)為科學(xué)計(jì)數(shù)法表示:
(1)小數(shù)點(diǎn)前的數(shù)字多于21位。
(2)小數(shù)點(diǎn)后的零多于5個光稼。

ES6中新規(guī)定反引號``包裹的字符串可以換行

var  a = `1234
5678`

不過第二行必須頂頭寫睹簇,不然會多出來空格大脉。

typeof運(yùn)算符

JavaScript 確定一個值到底是什么類型有三種方法:

  • typeof運(yùn)算符
  • instanceof運(yùn)算符
  • Object.prototype.toString方法

typeof運(yùn)算符可以返回一個值的數(shù)據(jù)類型焊夸。

typeof 123 // "number"
typeof '123' // "string"
typeof false // "boolean"
typeof undefined//"undefined"

typeof一個對象返回object朗若。
typeof空數(shù)組([])的類型也是object恼五。

typeof在測試數(shù)據(jù)類型的時候會有倆個意想不到的結(jié)果

typeof null//object
typeof fn()//function

instanceof運(yùn)算符可以區(qū)分?jǐn)?shù)組和對象。

null 和 undefined區(qū)別

  • null是一個表示“空”的對象哭懈,轉(zhuǎn)為數(shù)值時為0灾馒;
  • undefined是一個表示”此處無定義”的原始值,轉(zhuǎn)為數(shù)值時為NaN遣总。
  • 如果一個變量沒有賦值睬罗,他就是undefined
  • 想有一個對象object,不想賦值旭斥,就設(shè)置等于null,非對象不想賦值就設(shè)置等于undefined

null表示空值容达,即該處的值現(xiàn)在為空。調(diào)用函數(shù)時垂券,某個參數(shù)未設(shè)置任何值花盐,這時就可以傳入null,表示該參數(shù)為空菇爪。

undefined表示“未定義”算芯,用法如下:
1,變量聲明了凳宙,但沒有賦值
2熙揍,調(diào)用函數(shù)時,應(yīng)該提供的參數(shù)沒有提供氏涩,該參數(shù)等于 undefined
3届囚,對象沒有賦值的屬性
4有梆,函數(shù)沒有返回值時,默認(rèn)返回 undefined

boolean布爾值

下列運(yùn)算符會返回布爾值:

  • 兩元邏輯運(yùn)算符: && (And)意系,|| (Or)
  • 前置邏輯運(yùn)算符: ! (Not)
  • 相等運(yùn)算符:===淳梦,!==,==昔字,!=
  • 比較運(yùn)算符:>爆袍,>=,<作郭,<=

轉(zhuǎn)換規(guī)則是除了下面六個值被轉(zhuǎn)為false陨囊,其他值都視為true。

  • undefined
  • null
  • false
  • 0
  • NaN
  • ""或''(空字符串)

空數(shù)組([])和空對象({})對應(yīng)的布爾值夹攒,都是true蜘醋。

NaN

NaN是 JavaScript 的特殊值,表示“非數(shù)字”(Not a Number)咏尝,主要出現(xiàn)在將字符串解析成數(shù)字出錯的場合压语。
NaN不是一個特殊數(shù)值,數(shù)據(jù)類型是Number编检。

typeof NaN // 'numbe

NaN不等于任何值胎食,包括它本身。
NaN在布爾運(yùn)算時被當(dāng)作false允懂。
NaN與任何數(shù)(包括它自己)的運(yùn)算厕怜,得到的都是NaN。

Infinity

nfinity表示“無窮”蕾总,用來表示兩種場景粥航。一種是一個正的數(shù)值太大,或一個負(fù)的數(shù)值太小生百,無法表示递雀;另一種是非0數(shù)值除以0,得到Infinity蚀浆。
Infinity與NaN比較缀程,總是返回false。

parseInt蜡坊,parseFloat

parseInt方法用于將字符串轉(zhuǎn)為整數(shù)杠输。
字符串轉(zhuǎn)為整數(shù)的時候,是一個個字符依次轉(zhuǎn)換秕衙,如果遇到不能轉(zhuǎn)為數(shù)字的字符,就不再進(jìn)行下去僵刮,返回已經(jīng)轉(zhuǎn)好的部分据忘。
第一個字符不能轉(zhuǎn)化為數(shù)字(后面跟著數(shù)字的正負(fù)號除外)鹦牛,返回NaN。

parseInt方法還可以接受第二個參數(shù)(2到36之間)勇吊,表示被解析的值的進(jìn)制曼追,返回該值對應(yīng)的十進(jìn)制數(shù)。默認(rèn)情況下汉规,parseInt的第二個參數(shù)為10礼殊,即默認(rèn)是十進(jìn)制轉(zhuǎn)十進(jìn)制。

parseFloat方法用于將一個字符串轉(zhuǎn)為浮點(diǎn)數(shù)针史。
parseFloat會將空字符串轉(zhuǎn)為NaN晶伦。

isNaN,isFinite

isNaN方法可以用來判斷一個值是否為NaN啄枕。
isNaN(Number('Hello'))
使用isNaN之前婚陪,最好判斷一下數(shù)據(jù)類型。

判斷NaN更可靠的方法是频祝,利用NaN為唯一不等于自身的值的這個特點(diǎn)泌参,進(jìn)行判斷。

isFinite方法返回一個布爾值常空,表示某個值是否為正常的數(shù)值沽一。
除了Infinity、-Infinity漓糙、NaN和undefined這幾個值會返回false锯玛,isFinite對于其他的數(shù)值都會返回true。

參考資料:
阮一峰的JavaScript教程

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末兼蜈,一起剝皮案震驚了整個濱河市攘残,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌为狸,老刑警劉巖歼郭,帶你破解...
    沈念sama閱讀 223,126評論 6 520
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異辐棒,居然都是意外死亡病曾,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,421評論 3 400
  • 文/潘曉璐 我一進(jìn)店門漾根,熙熙樓的掌柜王于貴愁眉苦臉地迎上來泰涂,“玉大人,你說我怎么就攤上這事辐怕”泼桑” “怎么了?”我有些...
    開封第一講書人閱讀 169,941評論 0 366
  • 文/不壞的土叔 我叫張陵寄疏,是天一觀的道長是牢。 經(jīng)常有香客問我僵井,道長,這世上最難降的妖魔是什么驳棱? 我笑而不...
    開封第一講書人閱讀 60,294評論 1 300
  • 正文 為了忘掉前任批什,我火速辦了婚禮,結(jié)果婚禮上社搅,老公的妹妹穿的比我還像新娘姨谷。我一直安慰自己捂蕴,他們只是感情好集漾,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,295評論 6 398
  • 文/花漫 我一把揭開白布秧均。 她就那樣靜靜地躺著,像睡著了一般荷并。 火紅的嫁衣襯著肌膚如雪合砂。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,874評論 1 314
  • 那天源织,我揣著相機(jī)與錄音翩伪,去河邊找鬼。 笑死谈息,一個胖子當(dāng)著我的面吹牛缘屹,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播侠仇,決...
    沈念sama閱讀 41,285評論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼轻姿,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了逻炊?” 一聲冷哼從身側(cè)響起互亮,我...
    開封第一講書人閱讀 40,249評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎余素,沒想到半個月后豹休,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,760評論 1 321
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡桨吊,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,840評論 3 343
  • 正文 我和宋清朗相戀三年威根,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片视乐。...
    茶點(diǎn)故事閱讀 40,973評論 1 354
  • 序言:一個原本活蹦亂跳的男人離奇死亡洛搀,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出佑淀,到底是詐尸還是另有隱情留美,我是刑警寧澤,帶...
    沈念sama閱讀 36,631評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站独榴,受9級特大地震影響僧叉,放射性物質(zhì)發(fā)生泄漏奕枝。R本人自食惡果不足惜棺榔,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,315評論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望隘道。 院中可真熱鬧症歇,春花似錦、人聲如沸谭梗。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,797評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽激捏。三九已至设塔,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間远舅,已是汗流浹背闰蛔。 一陣腳步聲響...
    開封第一講書人閱讀 33,926評論 1 275
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留图柏,地道東北人序六。 一個月前我還...
    沈念sama閱讀 49,431評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像蚤吹,于是被迫代替她去往敵國和親例诀。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,982評論 2 361

推薦閱讀更多精彩內(nèi)容