parseInt 和Number 的應用區別

2022-08-11 17:36:17 字數 1458 閱讀 9378

這兩個函式最多的應用就是把乙個字串轉換成資料型別。

1.parseint()

parseint()函式將給定的字串以指定的基數解析為整數

語法:parseint(string,radix)

注:第二個引數表示使用的進製,一般使用10進製。

eg:

parseint("16", 8) = 14;

parseint("16",10) = 16;

parseint("16",16) = 22;

parseint從頭解析string為整數,在遇到不能解析的字元時就返回已經解析的整數部分,如果第乙個字元就不能解析,就直接返回nan。

2.number()

number()在不用new操作符時,可以用來執行型別轉換。如果無法轉換為數字,就返回nan。eg:「123a」,parseint()返回的是123,number()返回時nan。

3.不同型別的字串使用這兩個函式的轉換區別:

// 當字串是由數字組成的時候 他們轉換的數字一樣的沒有差別  

var numstr = '123'

console.log(parseint(numstr))   //123

console.log(number(numstr))//123

​// 當字串是由字母組成的時候

var numstr = 'abc'

console.log(parseint(numstr))   //nan

console.log(number(numstr))//nan

​// 當字串是由數字和字母組成的時候

var numstr = '123a'

console.log(parseint(numstr))   //123

console.log(number(numstr))//nan

​// 當字串是由0和數字

var numstr = '0123'

console.log(parseint(numstr))   //123

console.log(number(numstr))//123

​// 當字串包含小數點

var numstr = '123.456'

console.log(parseint(numstr))//123

console.log(number(numstr))

​// 當字串為null時

var numstr = null

console.log(parseint(numstr))//nan

console.log(number(numstr))//0

​// 當字串為''(空)時

var numstr = ''

console.log(parseint(numstr))//nan

console.log(number(numstr))//0

進製轉換 和 parseInt

進製轉換 參考鏈結 1.二進位制 轉 十進位制 111 引數不得大於2 任何引數的次方未0 結果為1 1 1 2 0 1 1 2 1 1 1 2 2 1 2 4 72.十進位制 轉 二進位制 14可以展示 2 的次方 有 1,2,4,8 8 4 2 14 所以 1110 1110 在轉化為10進製做...

parseInt 函式正解

阿里巴巴的前端面試題目中有一道題是這樣的,是關於parseint 的用法的,題目如下 var b parseint 01 alert b b var c parseint 09 08 2009 alert c c 解答這道題目,我們必須要知道parseint 是怎麼工作的?正確的答案應該是 b 1 ...

徹底搞懂parseInt

parseint 72.45 8 2 8 1 7 8 1 4 8 1 5 8 2 2 1 7 8 4 1 8 5 1 8 8 58.578125 parseint 231 3 3進製只能是0 2,所以查詢到3的時候,發現已經不是3進製的範疇了,則不再繼續查詢 把2當做3進製,最後轉為10進製 2 3...