中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

javascript有哪些轉換成整數方法

發布時間:2021-07-21 16:30:02 來源:億速云 閱讀:109 作者:chen 欄目:web開發

這篇文章主要講解了“javascript有哪些轉換成整數方法”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“javascript有哪些轉換成整數方法”吧!

javascript轉換成整數方法有:1、使用parseInt()方法,語法格式“parseInt(字符串,要解析的數字的基數)”;2、使用Math.trunc()方法,語法格式為“Math.trunc(數值)”。

本教程操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。

本文將會列舉并說明JavaScript 把一個number(或者numerical的對象)轉換成一個整數相關方法。

使用parseInt

parseInt的語法如下:parseInt(string, radix)

參數string的表示要解析的字符串,也可以是一個對象,會自動調用對象的toString函數得到要解析的字符串。

parseInt的第二個參數,可以指定要解析的數字的基數,注意該值介于 2 ~ 36 之間,如果該參數小于 2 或者大于 36,則 parseInt() 將返回 NaN。比如下面的代碼,結果為8,這樣可以很方便的把其他的進制的數字轉換為10進制的數字:

parseInt(10,8) // 結果為8

當參數 radix 的值為 0,或沒有設置該參數時,parseInt() 會根據 string 來判斷數字的基數。

舉例,如果 string 以 "0x" 開頭,parseInt() 會把 string 的其余部分解析為十六進制的整數。如果 string 以 0 開頭,那么 ECMAScript v3 允許 parseInt() 的一個實現把其后的字符解析為八進制或十六進制的數字。如果 string 以 1 ~ 9 的數字開頭,parseInt() 將把它解析為十進制的整數。

注釋

1. 只有字符串中的第一個數字會被返回。 什么意思呢,如果輸入的字符串是"123abc","123,123",那么結果是123,parseInt方法會自動忽略后面的非數字部分。

2. 輸入字符串開頭和結尾的空格是允許的。

3. parseFloat 也具備以上兩條特征,不過本文不重點講述。

使用Math.trunc

Math.trunc() 方法會將數字的小數部分去掉,只保留整數部分。比如以下代碼:

Math.trunc(13.37)    // 13
Math.trunc(42.84)    // 42
Math.trunc(0.123)    //  0
Math.trunc(-0.123)   // -0
Math.trunc("-1.123") // -1
Math.trunc(NaN)      // NaN
Math.trunc("foo")    // NaN
Math.trunc()         // NaN

當傳入的類型不是數字的時候,會自動做癮式轉換。但是如果是一個非numerical的參數的時候,返回NaN。

IE瀏覽器并不支持這個方法,所以可以考慮polyfill:

Math.trunc || (Math.trunc = function(v){
   return v < 0 ? Math.ceil(v) : Math.floor(v); // 使用Math.floor和Math.ceil方法
})
// 或者
if (!Math.trunc) {
    Math.trunc = function(v) {
        v = +v;
        if (!isFinite(v)) return v;
        
        return (v - v % 1) || (v < 0 ? -0 : v === 0 ? v : 0);
        
        // 返回:
        //  0        ->  0
        // -0        -> -0
        //  0.2      ->  0
        // -0.2      -> -0
        //  0.7      ->  0
        // -0.7      -> -0
        //  Infinity ->  Infinity
        // -Infinity -> -Infinity
        //  NaN      ->  NaN
        //  null     ->  0
    };
}

二進制位運算

對于numerical的對象n,可以通過如下的方式來轉換為整數:

  • ~~n 雙重位取反(Double bitwise NOT)

  • n | n 位或運算(Bitwise OR)

  • n | 0 和0的位或運算(Bitwise OR with 0)

  • n << 0 位左移運算0位(Bitwise left shift)

  • n >> 0 位右移運算0位(Bitwise right shift)

  • n & n 為與運算(Bitwise AND)

比如代碼如下:

   ~~1.23 // 1
   -1.2 | -1.2  // - 1
   -1.2 | 0  // - 1
   3.4 >> 0 // 3
   3.2 << 0 // 3
   5.5 & 5.5 // 5
  ~~"1.2" // 1.2

注意,從上面可以看出,位運算下字符串會自動轉換數字。

感謝各位的閱讀,以上就是“javascript有哪些轉換成整數方法”的內容了,經過本文的學習后,相信大家對javascript有哪些轉換成整數方法這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

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

AI

辽宁省| 修文县| 灌阳县| 边坝县| 清流县| 深圳市| 本溪市| 江都市| 蓬溪县| 辽源市| 乐陵市| 桦甸市| 巴中市| 秀山| 漠河县| 治多县| 通榆县| 东山县| 会东县| 黄平县| 阿克苏市| 永仁县| 木兰县| 玉环县| 临湘市| 湛江市| 云梦县| 渑池县| 仁寿县| 宿迁市| 嘉义市| 剑河县| 苍梧县| 邹城市| 无极县| 海晏县| 平度市| 三都| 隆安县| 巴林左旗| 南木林县|