js參考 js強制型別轉換

2021-10-13 05:19:48 字數 3387 閱讀 4541

轉為 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 ...