您好,登錄后才能下訂單哦!
這篇“parseInt函數怎么使用”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“parseInt函數怎么使用”文章吧。
parseInt()
作用是將參數(通常為字符串)強制轉換為整數。
它有兩個參數,第二個可以省略,我們先展示常見的用法
1. 轉換規則:依次將字符串中從左到右的數字部分轉為整數,一旦轉換失敗,返回NaN。
(1) 參數是字符串類型:
var a = parseInt(‘10’); //將字符串轉成整數類型
console.log(a); // 10
var b = parrseInt(‘10true’); //將有效數字部分轉為整數,提取開頭數字部分
console.log(b); // 10
var c = parseInt(‘10true20’); //只將開頭有效部分轉為整數
console.log(c); //10
var d = parseInt(‘045zoo’); //開頭部分轉為整數,數字前面的0省略
console.log(d); //45
var f = parseInt(‘34.5’); //整數部分,小數點非數字部分,舍去
console.log(f); //34
var g = parseInt(‘a3’); //若不是以數字開頭,轉為NaN(Not a Number 不是數字)的特殊數值
console.log(g); //NaN
(2) 參數是數字類型:
var a = parseInt(3.4); //依然轉為數字,但是取整
console.log(a); //3
(3) 其它數據類型:只要開頭不包含有效數字,結果都轉為NaN
var a = parseInt(true);
console.log(a); //NaN
var b = parseInt(null);
console.log(b); //NaN
var c = parseInt(undefined);
console.log(c); //NaN
var d = parseInt([]);
console.log(d); //NaN
var e = parseInt({});
console.log(e); //NaN
接下來,我們看第二個參數的用法
第二個參數:表示進制,范圍2——36(用來說明第一個參數的進制規則)
var a = parseInt(‘99’,10); // 如果字符串為十進制內容,該參數可省略
console.log(a); // 99
var a = parseInt(‘1001’,2); // ‘1001’ 符合二進制規則, 轉為十進制整數
console.log(a); // 9
var a = parseInt(‘1001’,10); // ‘1001’同樣符合十進制, 轉為十進制整數
console.log(a); // 1001
var b = parseInt(‘234’,2); //‘234’不符合二進制的規則
console.log(b); // NaN
var b = parseInt(‘abcde’,2); //‘abcde’不符合二進制的規則
console.log(b); // NaN
var c = parseInt(‘1022’,2); //‘10’部分屬于二進制,但‘22’不是,將開頭有效的部分提取并轉成十進制
console.log(c); //2
一些特殊說明
如果以0x或0X開頭,即使不說明進制規則,也能識別
var e = parrseInt(‘0xa’); //0x是十六進制的表示方法,a是十六進制中的10,轉換成整數后自動切換為十進制
console.log(e); //10
盡量不使用出現e的數字,由于只能識別開頭部分,會造成結果混亂
此時應使用parseFloat方法替代
parseInt("6.022e23", 10); // 返回 6
parseInt(6.022e2, 10); // 返回 602
非常大或非常小的數字
parseInt(4.7 * 1e22, 10); // 非常大的數值變成 4
parseInt(0.00000000000434, 10); // 非常小的數值變成 4
在最新的ES5規范中,以0開頭的數字,已經不能再被識別為八進制了。
parseInt("011"); //會當成10進制轉換為 11
parseInt("011", 8) //指定了8進制,結果為 9
以上就是關于“parseInt函數怎么使用”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。