轉為 number 型別
1)使用 number(***) 函式
number
('1024'
)// 1024
number
('2.3'
)// 2.3
number
('1s024'
)// nan
number
('0b100'
)// 4
number
('0x59'
)// 89
number
('0o23'
)// 19
number
('true'
)// nan
number
(true
)// 1
number
(false
)// 0
number
(null
)// 0
number
('null'
)// nan
number
(undefined)
// nan
number()
// 0
number(''
)// 0
number
(' '
)// 0
number
(' 23'
)// 23(會忽略字串開頭和結尾的空格)等價於 number('23')
① 傳入引數 *** 的值可以是 字串、布林值、null
② 字串轉為數字,字串中的內容可以是不同進製的格式(以0b 或 0x 或 0o 或 0b 或 0x 或 0o 開頭的合法數字)
③ 當 number(***) 轉換失敗時,則返回nan(表示非數字)
④ 當n為空串或全是空格的字串 或 null 或 false時,number(n) 轉換後為 0
2)parseint(string, radix) —— 將字串轉為整數
parseint
('10.24',10
)// 10
parseint
('0x59'
)// 0
parseint
('100',2
)// 4
parseint
('100',5
)// 25
parseint
('10.24e3',10
)// 10
parseint
('1024e3',10
)// 1024
parseint
(true
)// nan
parseint
(null
)// nan
parseint()
// nan
parseint
(' '
)// nan(會忽略字串開頭和結尾的空格)等價於 parseint('')
① 第乙個引數為字串,非字串會自動轉為字串;第二個引數 radix 表示第乙個引數字串是幾進製的格式,即進製的基數,為乙個介於2和36之間的整數,es5規定預設為10(最好都要指定radix的值,不然可能出現不希望的bug) 。
② 解析字串中的有效整數,將其轉換為 number 。
③【具體】從第乙個引數字串(忽略開頭和結尾的空格)的第1個字元開始擷取,遇到非有效整數的字元時終止,將擷取到的字串轉換為十進位制數字返回。如果擷取到的字串為空串時,則返回nan**換失敗)。
④【有效整數的字元】**正負號(+或-) 整數(0~基數-1) **,即二進位制為 [+/-] (0~1),八進位制為 [+/-] (0~7),十進位制為 [+/-] (0~9),十六進製制為 [+/-] (0~f),36進製為 [+/-] (0~z),字母不區分大小寫。
⑤ 將整型數值以特定基數轉換成它的字串值可以使用 intvalue.tostring(radix) 。
3)parsefloat(string) —— 將字串轉為浮點數
parsefloat
('10.24'
)// 10.24
parsefloat
('10.24e3'
)// 10240
parsefloat
('1024e3'
)// 1024000
parsefloat
('1m0.24e3'
)// 1
parsefloat
('a010'
)// nan
parsefloat
(true
)// nan
parsefloat
(null
)// nan
parsefloat
(' '
)// nan(會忽略字串開頭和結尾的空格)等價於 parsefloat('')
① 只接收乙個引數,即待轉換的字串,非字串會自動轉為字串。
② 擷取字串中的有效數字,將其轉換為 number 。
③【具體】從字串(忽略開頭和結尾的空格)的第1個字元開始擷取,遇到非有效數字的字元時終止,將擷取到的字串轉換為十進位制數字返回。如果擷取到的字串為空串時,則返回nan**換失敗)。
④【有效數字的字元】正負號(+或-)、數字(0-9)、小數點 或者 科學記數法中的指數(e或e) 。
⑤ nan 是 number型別的乙個特殊值,可以呼叫 isnan(parseint(『1s』)) 判斷。
轉為 object 型別(又稱引用型別)
從js型別轉換一覽表中可以看出,將基本型別轉換為 object 型別使用的方法是呼叫某建構函式。
new
string
(1024
)// string
newboolean
(1024
)// boolean
newboolean
(nan
)// boolean
newnumber
(1024
)// number
newnumber
('ko'
)// number
newnumber
('098'
)// number
newnumber
('0o77'
)// number
newnumber
('0b100'
)// number
js強制型別轉換
值型別轉換 包括兩種 顯式轉換和隱式轉換。將值從一種型別轉換為另外一種型別稱為型別轉換,也叫做顯式型別轉換,隱式的情況也叫做強制型別轉換。在js中兩種轉換被統稱為強制型別轉換。其實,對於顯式和隱式沒有很明確的界定,如果你不知道某種情況是一種顯式型別轉換,那麼它對於你來講就是隱式的。抽象值操作 顯示強...
JS 強制型別轉換
number string var number 8 var str string number console.log typeof str 複製 boolean string var boolean true var str string boolean console.log typeof s...
js強制型別轉換
今日地鐵看書總結 強制型別轉換 tostring 其他資料型別轉化為字串的方法 注意,陣列重寫了tostring 方法。對於json.stringfy 不安全值有undefined,null,function,symbol,迴圈引用物件,轉化他們結果為undefined json.stringfy ...