JS之數據類型

JS共有七種數據類型:

  1. number/數值
  2. string/字符串
  3. boolean/布爾
  4. symbol/符號
  5. null
  6. undefined
  7. object/對象

number/數值

十進制

1 / 1.1 / 1.23e2瀏覽器

二進制

ob開頭,不分大小寫 ob1 > 1 0b10 > 2 0B10 > 2bash

八進制

0開頭 011 > 8學習

十六進制

OX開頭 0x11 > 17spa


String/字符串

‘你好’、"你好"
"" 、 ‘’ : 空字符length爲0;
" " 、 ' ' : 空格字符串length爲1;命令行

轉義

  • var a = ' ' ' //出錯
    var a = " ' " //單引號
    var a = ' \' ' //單引號
    \ 爲轉義符,讓瀏覽器知道後邊不是結束的符號;
    var a = ' \\ ' //表示一個\
  • var n = '\n' //回車
  • var t = '\t' //Tab製表符

多行命令行

JS學習的是命令行的規則。當想換行時:code

  • var s1='12345\
    67890'
    //坑人語法,問題以下:
  • var s2 = '12345\空格空格空格
    67890'
    //空格看不到,報錯;
  • 儘可能採用如下的易讀語法:
    var s3 = '12345' +
    '67890'
  • ES6新特性: var s4 = [`反引號] 12345[回車]
    67890[反引號]

boolean/布爾

  • 歷史:布爾/數學家/邏輯學/下雨/上課/沒帶傘/肺病/去世;
  • true真/false假
  • && 與/ || 或

symbol

搜索「方應杭 symbol」對象


null & undefined

  • null類型 : 一個值爲null;
    undefined類型 : 一個值爲undefined;
  • 都表示什麼都沒有,JS之父產生的bug;
  • 區別:
  1. 變量沒有值時,用undefined;
  2. 慣例是:
    有一個對象object,如今不想賦值,用null;
    var object = null
    有一個非對象,不想賦值,建議初始化爲undefined;
    var n = var n = undefined
    即通常狀況下:null表示空對象;undefined表示空「非對象」。

object/對象/哈希表

  • 複雜類型由以上簡單類型組成;字符串

  • var person = {
    'name':'frank',
    'age':18,
    'gender':'male',
    'children':{name:'xxx',age:1}
    'self':person
    }數學

  • 讀取:person['name'] ,
    引號裏符合標識符規範時,能夠:
    person.namestring

  • 方括號裏單引號不能刪

var name = 'jack'   

person[name]   //報錯   
複製代碼

person[name]=person['jack'],不存在,undefined;

  • '' : 'frank'能夠加入對象;
    person[''] = 'frank'
    同理'a[空格]b' = 'frank'也能夠加入對象;
  • 9a : 'frank不能夠加入對象,
    當key不加引號時,命名就必須按照標識符規範原則;

delete、in、for in 和 typeof

delete :將鍵、值同時清空;

delete person['name']   
person.name           //undefined  (無value)   
'name' in person      //false  (無key)
複製代碼

遍歷對象:

for (var key in person){
    console.log(key)
}
複製代碼

打出key: name,age...

for (var key in person){
    console.log(person[key])
}
複製代碼

打出value:frank,18...

錯誤:

console.log(person.key)等於person['key'],並不存在key這個鍵。

typeof:

特殊狀況:

  1. typeof null //object
  2. typeof function //function
相關文章
相關標籤/搜索