JS學習筆記(二)JS數據七種類型概述及類型轉換

JS數據類型

Javascript中的變量能夠保存任何數據,是弱類型語言,或者稱之爲"動態類型"的編程語言。Javascript共有七種數據類型,具體以下。javascript

JS七種數據類型

1. number

number類型用於正數和浮點數。除了常規的數字,一些特殊的數值也屬於這種類型。好比:Infinity,-Infinity和NaN。java

  • Infinity表明數學概念中的無限大,是一個比任何數字都大的特殊值。能夠經過除於0獲得。或者直接在代碼中 使用 Infinity表示無限大
alert(1/0)// Infinity
alert(Infinity)//Inifinity
複製代碼
  • NaN 表明一個計算錯誤,是一個不對的或者一個未定義的數字操做獲得的結果,表示一個非數字。

任何對NaN的進一步操做都會返回NaN編程

在JS中,數學運算是安全的,能夠作任何操做:除以0,將非數字字符串視爲數字,等等。腳本永遠不會致命的錯誤。最壞的狀況是返回NaN。安全

2. string

JS中的字符串必須被包裹在引號中。 有三種包含字符串的方式:bash

  1. 雙引號 "hello"
  2. 單引號 'hello'
  3. 反引號 hello 反引號是功能擴展的引用,容許經過${},將變量和表達式嵌入到字符串中。

3. boolean

只有兩個值,true和false編程語言

4. null

只有一個值,是null,表示無,空,或者值未知。函數

5. undefined

只有一個值,含義是 未被賦值 若是變量被聲明,而未被賦值,那麼它的值就是undefined。spa

6. Object

object類型是特殊的類型,屬於複雜類型。code

7. Symbol

Symbol類型用於建立對象的惟一標識符。對象

類型轉換

大多數狀況下,運算符和函數會自動將值轉換爲正確的類型。

toString

alert會自動將任何值轉換爲字符串,也能夠顯式的調用Stirng(value)進行轉換。

toNumber

在算術函數和表達式中,會自動進行number類型轉換,也可使用Number(value)進行轉換。 number類型轉換規則:

  • undefined => NaN
  • null => 0
  • true/false => 1/0
  • string => 去掉首尾空格後的純數字字符串中含有的數字,若是字符串只由空格字符組成,返回0,若是字符串不是純數字,則返回NaN

加號"+" 幾乎全部的算術運算符都會將值轉換爲數字,加號是個例外,若是其中一個運算元是字符串,另一個也會轉換爲字符串。

toBoolean

邏輯操做或者顯式調用Boolean(value)都會觸發boolean類型轉換。 轉換規則:

  • 假值: 0 ,空的字符串,null,undefined,NaN轉換爲false
  • 其餘值轉換爲true

注意: 包含0的字符串"0" 會被轉化爲 true(非空字符串會被轉化爲true)

參考連接

zh.javascript.info/

相關文章
相關標籤/搜索