JS 里的數(shù)據(jù)類型轉換
- 某類型轉換為字符串的方法
eg.var a=4
- 用 變量.toString()方法,
a.toString()注意括號 - 用 String(變量)方法,
String(a) - 用該類型+空字符串,
a+''還有null+'',undefined+''
注:瀏覽器調(diào)用console.log()和alert()類似命令時,會自動先將內(nèi)容轉換為string再打印
- 某類型轉換為Boolean的方法
- 用Boolean(內(nèi)容),
Boolean(a) - 用連續(xù)2次的取反
!!a - 類型里要記住的5個false值:
0,NaN,'',null,undefined.
注1:所有的對象obj都是true
注2:當把類型用于條件判斷時,js會先自動將其轉換為Boolean值,再判斷.
- 某類型轉換為Number的方法
eg.var b='5';var c='3b'
- 用Number('內(nèi)容'),
Number(b)//輸出5,Number(b)//輸出NaN - 用parseInt('內(nèi)容',進制),
parseInt(c)//輸出3,遇到字母停止,默認10進制,用于整數(shù) - 用parseFloat('內(nèi)容'),
parseFloat('5.33')//輸出5.33,用于浮點數(shù) - 用該類型-0,
b-0//輸出5,不能用+0,+0會變?yōu)樽址?50' - 用該類型前加+號,
+'-1'//輸出-1
- 對象的字符串化
eg.var d={a:0}
用1的三種方法,以及alert,console.log都是"[object Object]" - base64編碼
- 用于簡單加密解密的方法
-
var e=btoa(a)//加密,atob(e)//解密 - 非ascii碼不能直接用于base64編碼需要先轉換為ascii碼再做加解密,再轉換為非ascii碼
var f='帥'
var g=encodeURIComponent(f)//將漢字轉換為ascii碼"%E5%B8%85"
var h=btoa(g)//將ascii碼轉換為base64"JUU1JUI4JTg1"
var i=atob(h)//將base64解碼為ascii碼"%E5%B8%85"
var j=decodeURIComponent(i)//將ascii碼轉換為漢字''帥''