JS 里的數據類型

JavaScript 語言的每一個值,都屬于某一種數據類型。JavaScript 的數據類型,共有七種。

  • 數值(number):整數和小數(比如1和3.14)
  • 字符串(string):文本(比如Hello World)
  • 布爾值(boolean):表示真?zhèn)蔚膬蓚€特殊值,即true(真)和false(假)
  • undefined:表示“未定義”或不存在,即由于目前沒有定義,所以此處暫時沒有任何值
  • null:表示空值,即此處的值為空
  • 對象(object):各種值組成的集合
  • symbol (ES6 新增了第七種 Symbol 類型的值)

1. number

  • 整數和小數:1 1.1 .1
  • 科學記數法:1.23e2
  • 二進制:0b11
  • 八進制:011(后來 ES5 添加了 0o11 語法)
  • 十六進制:0x11
  • NaN(Not a Number):nan是一種不是數值的數值

2. string

字符串默認只能寫在一行內,分成多行將會報錯,如果長字符串必須分成多行,可以在每一行的尾部使用反斜杠。
es6模板字符串(template string)是增強版的字符串,用反引號(`)標識。它可以當作普通字符串使用,也可以用來定義多行字符串,或者在字符串中嵌入變量

3. boolean

  • boolean 的取值
    只有兩個值:true 和 false
    a && b 在 a 和 b 都為 true 時,取值為 true;否則為 false
    a || b 在 a 和 b 都為 false 時,取值為 false;否則為 true

4. symbol

Symbol 是 ES6 引入了一種新的原始數據類型,表示獨一無二的值。詳情點擊前往方應杭:JS 中的 Symbol 是什么?

5. undefined 和 null

都表示沒有值,是 JS 的 BUG 之一。

  1. (規(guī)范)如果一個變量沒有被賦值,那么這個變量的值就是 undefiend
  2. (慣例)如果你想表示一個還沒賦值的對象,就用 null。如果你想表示一個還沒賦值的字符串/數字/布爾/symbol,就用 undefined(但是實際上你直接 var xxx 一下就行了,不用寫 var xxx = undefined)

6. object

簡單說,對象就是一組“鍵值對”(key-value)的集合,是一種無序的復合數據集合。
對象是最復雜的數據類型,又可以分成三個子類型。

  1. 狹義的對象(object)
  2. 數組(array)
  3. 函數(function)
    • object 里面可以有 object
    • object 的 key 一律是字符串,不存在其他類型的 key
      如果鍵名是數值,會被自動轉為字符串。
    • object[''] 是合法的
    • object['key'] 可以寫作 object.key
    • object.key 與 object[key] 不同
    • delete object['key']
      delete命令用于刪除對象的屬性,刪除成功后返回true。
    • 'key' in object
      用于檢查對象是否包含某個屬性(注意,檢查的是鍵名,不是鍵值),如果包含就返回true,否則返回false。它的左邊是一個字符串,表示屬性名,右邊是一個對象。

7. typeof 操作符

typeof運算符可以返回一個值的數據類型。

xxx 的類型 string number boolean symbol undefined null object function
typeof xxx 'string' 'number' 'boolean' 'symbol' 'undefined' 'object' 'object' 'function'
  • function 類型的類型是 'object' ,但是返回 'function'。
  • null的類型是object,這是由于歷史原因造成的。1995年的 JavaScript 語言第一版,只設計了五種數據類型(對象、整數、浮點數、字符串和布爾值),沒考慮null,只把它當作object的一種特殊值。后來null獨立出來,作為一種單獨的數據類型,為了兼容以前的代碼,typeof null返回object就沒法改變了。
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • JavaScript 的數據類型,共有七種。數值(Number):整數和小數(比如1和3.14)。字符串(Stri...
    手勁很大閱讀 634評論 0 0
  • 目錄 概述typeof運算符number(數字)string(字符串)boolean(布爾)undefined &...
    阿小經閱讀 836評論 0 7
  • 數值(number):整數和小數(比如1和3.14)字符串(string):文本(比如Hello World)。布...
    一只小前端閱讀 2,068評論 0 0
  • 一、JavaScript(js)的7種數據類型 1.數字/number 2.字符串/string 3.布爾/boo...
    elsa919閱讀 611評論 0 0
  • JS中值可以分為七個類型,分別是數值(number),字符串(string),布爾值(boolean),null,...
    達摩先森閱讀 551評論 0 0

友情鏈接更多精彩內容