數(shù)據(jù)類型 與 類型轉(zhuǎn)換
javascript語(yǔ)言的數(shù)據(jù)類型
- 數(shù)值(number):整數(shù)和小數(shù)(比如
1和3.14) - 字符串(string):文本(比如
Hello World)。 - 布爾值(boolean):表示真?zhèn)蔚膬蓚€(gè)特殊值,即
true(真)和false(假) -
undefined:表示“未定義”或不存在,即由于目前沒(méi)有定義,所以此處暫時(shí)沒(méi)有任何值 -
null:表示空值,即此處的值為空。 - 對(duì)象(object):各種值組成的集合
- 狹義的對(duì)象(object)
- 數(shù)組(array)
- 函數(shù)(function)
typeof 運(yùn)算符
javascript有三種方法,可以判斷一個(gè)值到底是什么類型
-
typeof運(yùn)算符 -
instanceof運(yùn)算符 -
Object.rpototype.toString方法
typeof 123 // number
typeof '123' // string
typeof false // boolean
typeof new Function() //function
typeof undefined // undefined
typeof null // object
typeof {} // object
typeof [] // object 數(shù)組在js內(nèi)部本質(zhì)上是一種特殊的對(duì)象
轉(zhuǎn)換為字符串
//1 使用全局函數(shù) String()
String(1)//'1'
String(null)//'null'
String(undefined)//'undefined'
String({})//"[object Object]"
String(true)//'true'
//2 用 + 號(hào) 與 ''拼接 可以達(dá)到相同的效果
// 當(dāng) + 號(hào)左右兩端出現(xiàn)字符串時(shí) 會(huì)將另一端轉(zhuǎn)換為字符串拼接
let s = 1 + '1' //11
轉(zhuǎn)換為布爾值
- 使用全局函數(shù)Number()
- 兩次取反!
什么是falsy值?
MDN:falsy是在 Boolean 上下文中認(rèn)定可轉(zhuǎn)換為false的值
//javascript 中的5個(gè) falsy值
!!0 //false
!!NaN //false
!!'' //false
!!null//false
!!undefined//false
轉(zhuǎn)換為數(shù)字
- Number('1')
- parseInt('1')
- parseFloat('1.23')
- '1' - 0
- '1' //取正
重點(diǎn)在parseInt上,關(guān)于parseInt的詳細(xì)用法請(qǐng)參考阮一峰javascript