javascript的數(shù)據(jù)類型

number

  • JavaScript內(nèi)部,所有數(shù)字都是以64位浮點(diǎn)數(shù)形式存儲(chǔ),整數(shù)也是。
  • JavaScript能夠表示的數(shù)值范圍是2-1023到21024,超出的范圍的數(shù)無(wú)法表示。
  • 溢出能夠表示的范圍會(huì)返回Infinity(正數(shù))或者0(負(fù)數(shù))數(shù)值可以有多種表示方法,字面形式和科學(xué)計(jì)數(shù)法。
  • 字面形式:35 0xFF(十六進(jìn)制) 123e。除以下情況外都采用字面形式表示,小數(shù)點(diǎn)前數(shù)字多于21位或后的零多于5個(gè)。
  • 有四種進(jìn)制來(lái)表示字面量:十進(jìn)制 十六進(jìn)制 八進(jìn)制 二進(jìn)制。
  • 屬于number類型的特殊數(shù)值:-0 +0 NaN 正負(fù)Infinity。
  • NaN參與的絕大部分運(yùn)算都會(huì)得到諸如NaN false 這樣的答案。
  • 數(shù)值相關(guān)的全局方法 parseInt() parseFloat() isNaN() isFinite()
  • 整數(shù)和小數(shù):1 1.1 .1
  • 科學(xué)記數(shù)法:1.23e2
  • 二進(jìn)制:0b11
  • 八進(jìn)制:011(后來(lái) ES5 添加了 0o11 語(yǔ)法)
  • 十六進(jìn)制:0x11

string

  • 字符串默認(rèn)只能寫在一行內(nèi),分成多行將會(huì)報(bào)錯(cuò),如果必須,要在每一行的結(jié)尾使用反斜桿,但反斜桿后不能有諸如空格的其他字符。
  • 連接運(yùn)算符 + 可以連接多個(gè)單行字符串,將長(zhǎng)字符串拆成多行書寫。
  • length屬性返回字符串長(zhǎng)度。
  • 由于歷史原因,JavaScript使用Unicode字符集。
  • btoa()將任意值1轉(zhuǎn)為Base64,atob()將base64編碼轉(zhuǎn)為原來(lái)的值。
  • 空字符串:''
  • 多行字符串:
    var s = '12345' +
    '67890' // 無(wú)回車符號(hào)

    var s = 12345 67890 // 含回車符號(hào)

symbol

  • Symbol 的用途就是如此:Symbol 可以創(chuàng)建一個(gè)獨(dú)一無(wú)二的值(但并不是字符串)。
  • Symbol 生成一個(gè)全局唯一的值。

null & undefined

  • 都表示沒(méi)有,在真值判斷中都是false,null == undefined
  • 二者的來(lái)由很有歷史原因,最開(kāi)始null用于標(biāo)識(shí)對(duì)象為空,這也是現(xiàn)在tyepof null //object的原因,之后又添加了一個(gè)undefined類型。[2]
  • 二者的區(qū)別,null是一個(gè)表示‘空’的對(duì)象,轉(zhuǎn)為數(shù)值時(shí)為0,undefined 是一個(gè)表示此處無(wú)定義的原始值,轉(zhuǎn)為數(shù)值時(shí)為NaN。

(規(guī)范)如果一個(gè)變量沒(méi)有被賦值,那么這個(gè)變量的值就是 undefiend
(習(xí)俗)如果你想表示一個(gè)還沒(méi)賦值的對(duì)象,就用 null。如果你想表示一個(gè)還沒(méi)賦值的字符串/數(shù)字/布爾/symbol,就用 undefined(但是實(shí)際上你直接 var xxx 一下就行了,不用寫 var xxx = undefined)

Boolean

  • 除了以下值: undefined null false 0 NaN "" 或者' '其他值都視為true。
  • 空數(shù)組和空對(duì)象都是true。

object

  • 對(duì)象是一組鍵值對(duì)的集合(key-value),是一種無(wú)序的符合數(shù)據(jù)集合。
  • 對(duì)象里的value可以是各種類型的數(shù)據(jù),對(duì)象里可以嵌套對(duì)象。
  • key都是字符串,可加可不加引號(hào)。
  • 存放于對(duì)象中的函數(shù)稱為方法。
  • 對(duì)象屬性的讀取和賦值 objec.property || object['property']。
  • 可通過(guò)(Object.keys(obj)).length 獲得對(duì)象key的長(zhǎng)度。
  • 使用delete命令刪除對(duì)象屬性值 delete obj.p。
  • 使用in運(yùn)算符檢查對(duì)象中是否有某個(gè)屬性 'p' in obj。
  • 使用for in 循環(huán)遍歷對(duì)象屬性,會(huì)跳過(guò)不可遍歷屬性,且遍歷繼承的屬性。

typeof 操作符

xxx 的類型 | string | number | boolean | symbol | undefined | null | object | function
---|---|---|---|---|---|---|---|---|---|---
typeof xxx | 'string' | 'number' | 'boolean' | 'symbol' | 'undefined' | 'object' | 'object' | 'function'

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1 數(shù)據(jù)類型 JavaScript里共有7中數(shù)據(jù)類型,分別為: 數(shù)值(number):整數(shù)和小數(shù)字符串(strin...
    YyzclYang閱讀 285評(píng)論 0 0
  • 最近在學(xué)習(xí)JS的數(shù)據(jù)類型的相關(guān)內(nèi)容,在此就做一些相關(guān)的學(xué)習(xí)筆記。 一、概述 JS的數(shù)據(jù)類型總共有7種。 1.num...
    wxyzcctn閱讀 480評(píng)論 0 3
  • JavaScript包括ECMAScript、DOM和BOM三部分。而ECMAScript當(dāng)中一共包括6種數(shù)據(jù)類型...
    一念成mo閱讀 516評(píng)論 0 2
  • JavaScript中總共有6種數(shù)據(jù)類型??煞譃閮纱箢悾汉?jiǎn)單數(shù)據(jù)類型和復(fù)雜數(shù)據(jù)類型。 說(shuō)明一下:上面這句話現(xiàn)在來(lái)說(shuō)...
    查查查查查查克閱讀 1,041評(píng)論 0 10
  • 回到宿舍,徐武說(shuō)青懸是書香門第,高中的時(shí)候教了徐武一段時(shí)間的吉他。 “她特別喜歡看書,還經(jīng)常讓我看書。我對(duì)她應(yīng)該屬...
    查理斯思特里克蘭德閱讀 237評(píng)論 2 1

友情鏈接更多精彩內(nèi)容