十年專注于品牌網站建設 十余年專注于網站建設_小程序開發_APP開發,低調、敢創新、有情懷!
      南昌百恒網絡微信公眾號 掃一掃關注
      小程序
      tel-icon全國服務熱線:400-680-9298,0791-88117053
      掃一掃關注百恒網絡微信公眾號
      掃一掃打開百恒網絡微信小程序

      百恒網絡

      南昌百恒網絡

      繼續詳細介紹Number()、parselnt()和parseFloat()函數的用法

      百恒網絡 2012-02-09 8619

      關于parselnt()使用方法舉例:

      var num3=parselnt(”OxA“); //10(十六進制數)

      var num4=parselnt (22.5)j // 22

      var num5=parselnt(”070”)j // 56(八進制數)

      var num6=parselnt(”7 0”)j // 70(十進制數)

      var num7=parselnt(“Oxf”); //15(十六進制數)

      理解這幾個例子時,最關鍵的是要注意parselnt()解析”070”和”70”的不同方式。此時。070中的前導零表示這是一個八進制(而非十進制)格式的字符串,因而結果是56(注意這個結果與調用:umber()函數不同)。而”70”呢,由于它沒有前導的零,因此就被轉換成了70。為了消除在使用parselnt()函數時可能導致的上述困惑①,ECMAScript也為這個函數提供了第二個參數:轉換時使用的基數(即多少進制)。

      如果知道要解析的值是十六進制格式的字符串,那么指定基數16作為第二個參數,可以保證得到正確的結果,例如:

      var num=parselnt(”OxAF", 16); //175

      實際上,如果指定了16作為第二個參數,字符串可以不帶前面的”Ox”,如下所示:

      var riurril=parselnt(?!疉F”, 16) //175

      var num2=parselnt(”AF”); //NaN

      這個例子中的第一個轉換成功了,而第二個則失敗了。差別在于第一個轉換傳人了基數,明確告訴parselnt()要解析一個十六進制格式的字符串;而第二個轉換發現第一個字符不是數字字符,因此就自動終止了。南昌網絡公司百恒網絡前端開發工程師認為指定基數會影響到轉換的輸出結果。例如:

      var nuffil=parselnt(”10”,2); //2 (按二進制解析)

      var num2=parselnt(”10“,8); //8 (按八進制解析)

      var num3=parselnt(”10”,10); //10(按十進制解析)

      var num4=parselnt(”10”,16)j。 //16(按十六進制解析)

      由于不指定基數則意味著讓parselnt()決定如何解析輸入的字符串,因此為了避免錯誤的解析,南昌網站建設公司百恒網絡前端開發工程師建議無論在什么情況下都明確指定基數——特別是在像下面這樣處理八進制值的情況下:

      var numl=parselnt(”010”)j //8 (按八進制解析)

      var num2=parselnt(“010”,8); //8 (按八進制解析)

      var num3=parselnt(“010”,10); //10(按十進制解析)

      在這個例子中,”010”會因第二個參數不同而被轉換成不同的值。第一行的轉換很直觀,即讓parseInt()決定如何轉換。由于第一個字符是”o”而后面也是數字字符,因而parseInt()假設它是一個八進制數。實際上,parseInt()的這個默認行為與第二行轉換中明確指定了基數的行為是一致的。第三行傳人的基數是10,因此parselnt()就會忽略字符串中所有前導的”o”,而只解析其余的數字字符。 與parseInt()函數類似,parseFloat()也是從第一個字符(位置0)開始解析每個字符。而且也是一直解析到字符串末尾,或者解析到遇見一個無效的浮點數字字符為止。也就是說,字符串中的第一個小數點是有效的,而第二個小數點就是無效的了,因此它后面的字符串將被忽略。舉例來說,”22.34.5”將會被轉換為22.34。除了第一個小數點有效之外,parseFloat()與parseInt()的第二個區別在于它始終都會忽略前導的零。parseFloat()可以識別前面討論過fOFf/有浮點數值格式,也鈕栝±0印于F;寫符串則始終會被轉換成0。由于parseFloat()只解析十進制值,因此它沒有用第二個參數指定基數的用法。最后還要注意一點,如果字符包含的是一個可解析為整數數(沒有小數點,或者小數點后都是零),parseFloat()會返回整數。以下是使用parseFloat()轉換數值的幾個典型示例:

      var numl=parseFloat( "123 4blue”); //1234 (整數)

      var num2=parseFloat(“OxA"); //0

      var num3=parseFloat("22.5"); //22.5

      var num4=parseFloat( "22 .34.5");//22 .34

      var num5=parseFloat("0908.5"); //908.5

      var num6=parseFloat(”3.125e7”); //31250000

      ①ECMAScrip‘允許實現把以”o”(不是" Ox"或”OX”)開頭的字符串解析為八進制或十進制數。而為了避免歧義,在轉換這種字符串時,應該為parselnt()指定第二個參數,即轉換的基數?!喜鼍W站公司工程師注

      希望對廣大站長或網站建設公司或從事企業網站建設的團隊有所幫助,如對此不太理解的,可以與南昌網絡公司百恒網絡技術部聯系。我們很高與廣大站長和網站建設公司技術人員分享我們的技術和經驗。

      400-680-9298,0791-88117053
      掃一掃關注百恒網絡微信公眾號
      掃一掃打開百恒網絡小程序

      歡迎您的光顧,我們將竭誠為您服務×

      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售后服務 售后服務
       
      售后服務 售后服務
       
      備案專線 備案專線
       
      ×
      99热这里只有精品在线| 亚洲日韩国产精品无码av| 久久香蕉超碰97国产精品| 亚洲精品高清无码视频| HEYZO无码综合国产精品227| 久久综合日韩亚洲精品色| 日韩国产精品99久久久久久| 国产成人午夜精品影院游乐网| 正在播放国产精品放孕妇| 午夜天堂精品久久久久| 国产精品天天看天天狠| 中文字幕精品亚洲无线码一区| 国产日韩精品无码区免费专区国产| 免费精品国自产拍在线播放 | 国语自产精品视频在线完整版 | 模特私拍国产精品久久| 亚洲精品亚洲人成在线麻豆| 欧产日产国产精品精品| 久久午夜无码鲁丝片直播午夜精品| 精品日产一区二区三区手机| 国产揄拍国产精品| 中文字幕九七精品乱码| 国产午夜精品理论片免费观看| 精品久久久无码中文字幕| 国产精品成人一区二区| 2022免费国产精品福利在线| 伊人精品久久久久7777| 亚洲国产精品第一区二区三区| 婷婷成人国产精品| 亚洲福利精品一区二区三区| 亚洲av无码国产精品色在线看不卡| 亚洲精品国产福利一二区| 国产精品 视频一区 二区三区| 国产高清在线精品一本大道国产| 国产精品高清免费网站| 国产精品手机在线观看你懂的 | 久久99亚洲综合精品首页| 精品人体无码一区二区三区| 国产在线91精品入口| 亚洲精品无码成人AAA片| 久久国产精品99精品国产987|