parseInt() 是 JavaScript 中用于將字符串轉(zhuǎn)換為整數(shù)的全局函數(shù)。它從字符串開(kāi)頭解析數(shù)字字符,直到遇到第一個(gè)非數(shù)字字符為止,并支持指定進(jìn)制。parseInt() 是處理字符串到整數(shù)轉(zhuǎn)換的核心工具,尤其適用于解析用戶輸入、API返回的字符串?dāng)?shù)字或不同進(jìn)制的數(shù)值。
javascript中parseint()的用法
parseInt()能夠解析字符串中的數(shù)字部分,并忽略非數(shù)字字符,從字符串開(kāi)頭開(kāi)始解析,直到遇到第一個(gè)非數(shù)字字符為止。parseInt() 還支持指定進(jìn)制(基數(shù)),以處理不同進(jìn)制的數(shù)字字符串。
1.語(yǔ)法
javascriptparseInt(string, radix);
string:要解析的字符串。如果傳入非字符串類(lèi)型,JavaScript 會(huì)自動(dòng)將其轉(zhuǎn)換為字符串。
radix(可選):表示要解析的數(shù)字的進(jìn)制(基數(shù)),范圍在 2 到 36 之間。如果未指定或?yàn)?0,JavaScript 會(huì)根據(jù)字符串前綴自動(dòng)判斷進(jìn)制:
以 0x 或 0X 開(kāi)頭的字符串會(huì)被解析為十六進(jìn)制。
以 0 開(kāi)頭且未指定 radix 的字符串可能被解析為八進(jìn)制。
其他情況默認(rèn)為十進(jìn)制。
2.示例
1. 基本用法
javascriptconsole.log(parseInt("123")); // 輸出: 123(十進(jìn)制)console.log(parseInt("123", 10)); // 輸出: 123(顯式指定十進(jìn)制)console.log(parseInt("0xFF")); // 輸出: 255(十六進(jìn)制)console.log(parseInt("1010", 2)); // 輸出: 10(二進(jìn)制)
2. 忽略非數(shù)字字符
javascriptconsole.log(parseInt("123abc")); // 輸出: 123(忽略 "abc")console.log(parseInt("abc123")); // 輸出: NaN(無(wú)法解析)
3. 自動(dòng)進(jìn)制推斷(謹(jǐn)慎使用)
javascriptconsole.log(parseInt("010")); // 輸出: 10(非嚴(yán)格模式下可能解析為八進(jìn)制,但現(xiàn)代瀏覽器默認(rèn)十進(jìn)制)console.log(parseInt("0x10")); // 輸出: 16(十六進(jìn)制)
4. 特殊值處理
javascriptconsole.log(parseInt("", 10)); // 輸出: NaN(空字符串)console.log(parseInt(null, 10)); // 輸出: NaN(null 轉(zhuǎn)換為 "null")console.log(parseInt(undefined, 10)); // 輸出: NaN(undefined 轉(zhuǎn)換為 "undefined")
5. 進(jìn)制轉(zhuǎn)換示例
javascriptconsole.log(parseInt("1010", 2)); // 輸出: 10(二進(jìn)制 "1010" → 十進(jìn)制 10)console.log(parseInt("FF", 16)); // 輸出: 255(十六進(jìn)制 "FF" → 十進(jìn)制 255)console.log(parseInt("ZZ", 36)); // 輸出: 1295(36 進(jìn)制 "ZZ" → 十進(jìn)制 1295)
3.注意事項(xiàng)
始終指定 radix:
為避免自動(dòng)進(jìn)制推斷的歧義(尤其是以 0 開(kāi)頭的字符串),建議始終顯式指定 radix,例如 parseInt("010", 10)。
非數(shù)字字符終止解析:
parseInt() 從字符串開(kāi)頭解析,遇到第一個(gè)非數(shù)字字符時(shí)停止。例如:
javascriptconsole.log(parseInt("123.45")); // 輸出: 123(忽略小數(shù)點(diǎn)及后續(xù)內(nèi)容)
與 Number() 的區(qū)別:
parseInt("123.45") 返回 123忽略小數(shù)部分。
Number("123.45") 返回 123.45完整解析為數(shù)字。
以上就是關(guān)于javascript中parseint()的用法相關(guān)介紹,parseInt() 是處理字符串到整數(shù)轉(zhuǎn)換的實(shí)用工具,尤其適合解析用戶輸入、API 返回的字符串?dāng)?shù)字或不同進(jìn)制的數(shù)值。務(wù)必注意指定 radix 并了解其解析規(guī)則,以避免意外行為。