溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

詳解JS轉換數(shù)值函數(shù)Number()、parseInt()、parseFloat()

發(fā)布時間:2020-09-03 10:26:45 來源:腳本之家 閱讀:156 作者:鬼眼邪神 欄目:web開發(fā)

JS中有三種函數(shù)可以將非數(shù)值轉換成數(shù)值:Number()、parseInt()和parseFloat()。第一個函數(shù),即轉型函數(shù)Number()可以用于任何數(shù)據(jù)類型,而另外兩個函數(shù)則專門用于把字符串轉換成數(shù)值。這3個函數(shù)對于同樣的輸入會返回不同的結果。

Number()

Number()函數(shù)的轉換規(guī)則如下:

•如果參數(shù)是Date對象,返回從1970年1月1日至今的毫秒數(shù)。
•如果是Boolean值,true和false將分別被替換為1和0
•如果是數(shù)字值,只是簡單的傳入和返回
•如果是null值,返回0
•如果是undefined,返回NaN
•如果是字符串,遵循下列規(guī)則: •如果字符串只包含數(shù)字(包括十六進制格式“0x”),則將其轉換成對應的十進制。
•如果字符串是空的,返回0。
•如果字符串包含其它字符,返回NaN。

•如果是對象,則調用對象的valueOf()方法,然后依照前面的規(guī)則轉換返回的值。如果轉換的結果是NaN,則調用對象的toString()方法,然后再依次按照前面的規(guī)則轉換返回的字符串值。

document.write(Number(true)+"<br/>"); //返回1
document.write(Number(false)+"<br/>"); //返回0
document.write(Number(null)+"<br/>"); //返回0
document.write(Number(undefined)+"<br/>"); //返回NaN
document.write(Number("001")+"<br/>"); //返回1
document.write(Number("001.1")+"<br/>"); //返回1.1
document.write(Number("0x10")+"<br/>"); //返回16
document.write(Number(new String("11aa"))+"<br/>"); //返回NaN

parseInt()

返回由字符串轉換得到的整數(shù)。

parseInt(numString, [radix])

參數(shù)

numString必選項。要轉換為數(shù)字的字符串。radix可選項。在 2 和 36 之間的表示 numString 所保存數(shù)字的進制的值。如果沒有提供,則前綴為 '0x' 的字符串被當作十六進制,前綴為 '0' 的字符串被當作八進制。所有其它字符串都被當作是十進制的。

說明

parseInt()方法返回與保存在numString中的數(shù)字值相等的整數(shù)。如果numString的前綴不能解釋為整數(shù),則返回NaN(而不是數(shù)字)。它會忽略字符串前面的空格,直至找到第一個非空格字符。

示例

document.write(parseInt("1")+"<br/>"); //返回1
document.write(parseInt("  1")+"<br/>"); //返回1
document.write(parseInt("1.1")+"<br/>"); //返回1
document.write(parseInt("11aa")+"<br/>"); //返回11
document.write(parseInt("020")+"<br/>"); //返回16(八進制)
document.write(parseInt("")+"<br/>"); //返回NaN
document.write(parseInt("AF")+"<br/>"); //返回NaN
document.write(parseInt("AF",16)+"<br/>"); //返回175
document.write(parseInt("0xAF")+"<br/>"); //返回175

parseFloat()

返回由字符串轉換得到的浮點數(shù)。

parseFloat(numString)

必選項 numString 參數(shù)是包含浮點數(shù)的字符串。

說明

parseFloat()返回與numString中保存的數(shù)相等的數(shù)字表示。如果numString的前綴不能解釋為浮點數(shù),則返回NaN(而不是數(shù)字)。

總結

以上所述是小編給大家介紹的JS轉換數(shù)值函數(shù)Number()、parseInt()、parseFloat(),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網(wǎng)站的支持!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI