js資料型別

劍指天涯心有夢發表於2018-07-13

JS歷史

js資料型別

資料型別

七種資料型別(請背誦): number(數值) string(字串) boolean(布林值) Symbol(符號) object(物件) undefined null
注意:沒有arry型別也沒有function型別。

  1. number
  • 整數和小數:1 0.1 .1
  • 科學計數法: 1.23e2
  • 二進位制: 0b11
  • 八進位制: 011(後來ES5新增了0o11語法)
  • 十六進位制: 0x11
  1. string
  • 空字串: '' "" length為0

  • 空格字串: ' ' " " length為1

  • 多行字串

      var a = '12345' + 
              '67890'  //無回車符號
      var a = `12345
      67890`           //含回車符號
      var a = '12345 \
      67890'           //不推薦使用,若反斜槓後有空格則報錯。
    複製程式碼
  1. boolean
  • 喬治·布林

    喬治·布林是英格蘭數學家和哲學家、數理邏輯學先驅。 由於其在符號邏輯運算中的特殊貢獻,很多計算機語言中將邏輯運算稱為布林運算,將其結果稱為布林值。

  • boolean的取值
    只有兩個值:true false
    a&&b即在a和b都為true時,取值為true,否則均取值為false(與門)
    a||b即在a和b都為false時,取值為false,否則均為true(或門)

  1. Symbol
    Symbol生成一個全域性唯一的值
  2. undefinednull
  • 都表示沒有值。一般來說null表示空物件,undefined表示空字串/數值/布林值/Symbol。
  • (規範)如果一個變數沒有被賦值,那麼這個變數的值就是undefined
  • (慣例)如果你想表示一個還沒有被賦值的物件,就用null
    var obj = null
  • (慣例)如果你想表示一個還沒有被賦值的字串/數值/布林值/Symbol,就用undefined
    var xxx = undefined實際上只需要var xxx
  1. object
  • object就是上面幾種基本型別(無序的)組合在一起

  • object的key一律是字串,不存在其他型別的key

  • object裡面可以有object

      var person = {
          name: 'Lilei',
          'child':{
              name: 'Jack'
          }, // 最後這個逗號可有可無
      }
    複製程式碼
  • object['']是合法的

  • 如果key符合識別符號條件的話object['key']可以寫作object.key ,注意object.key不同於object[key]

  • delete object['key'](同時刪除keyvalue)

  • 'key' in object檢測'key'是否在object裡面,返回一個布林值(即使鍵值為undefined)

typeof運算子

xxx的型別 string number boolean symbol undefined null object function
typeof xxx 'string' 'number' 'boolean' 'symbol' 'undefined' 'object' 'object' 'function'

注意:function並不是一個型別

相關文章