最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript數(shù)值類型知識匯總

 更新時間:2019年11月17日 15:56:48   作者:geeee  
這篇文章主要給大家介紹了關于JavaScript數(shù)值類型知識匯總的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用JavaScript具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧

整數(shù)

  • 十進制
  • 二進制

以零為開頭,后面接一個小寫或大寫的拉丁文字母B(0b或者是0B)

  • 八進制

以0開頭,然后是八進制數(shù)字序列(0-7) , 如果字面值中的數(shù)值超出范圍,那么前導0將被忽略,后面的數(shù)值當作十進制解析。

  • 十六進制

十六進制字面值的前兩位必須是 0x,后跟任何十六進制數(shù)字(0~9 及 A~F)。其中,字母 A~F可以大寫,也可以小寫;

浮點數(shù)

保存浮點數(shù)需要的內(nèi)存空間是保存整數(shù)值的兩倍,因此ECMAScript會不失時機的將浮點數(shù)轉(zhuǎn)換為整數(shù)值。

var floatNum1 = 1.; // 小數(shù)點后面沒有數(shù)字——解析為 1
var floatNum2 = 10.0; // 整數(shù)——解析為 10

默認會將小數(shù)點后面帶有6個零以上的浮點數(shù)值轉(zhuǎn)換為以e表示法表示的數(shù)值;

浮點數(shù)值的最高精度是17位小數(shù);

數(shù)值范圍

最大值Number.MAX_VALUE 1.7976931348623157e+308

最小值Number.MIN_VALUE 5e-324

  • Number.MIN_VALUE < var1 < Number.MAX_VALUE , isFinite(var1)返回false, 否則返回true
  • 如果值超過了js數(shù)值范圍,那么這個數(shù)值自動被轉(zhuǎn)換成特殊的Infinity值。實際情況 Number.MAX_VALUE + 1 還等于 Number.MAX_VALUE;
  • isFinite()函數(shù)判斷數(shù)值是否位有窮,參數(shù)位于最小與最大數(shù)值之間時會返回 true

NaN

  • 任何涉及 NaN 的操作(例如 NaN/10)都會返回 NaN
  • NaN 與任何值都不相等,包括 NaN 本身
  • 實際上只有 0 除以 0 才會返回 NaN,正數(shù)除以 0 返回 Infinity,負數(shù)除以 0 返回-Infinity
  • isNaN() 。在接收到一個值之后,會嘗試將這個值轉(zhuǎn)換為數(shù)值。也適用于對象,先調(diào)用對象的valueOf()判斷是否能轉(zhuǎn)成數(shù)值,若不能調(diào)用toString()再測試返回值。

數(shù)值轉(zhuǎn)換

有 3 個函數(shù)可以把非數(shù)值轉(zhuǎn)換為數(shù)值: Number()、 parseInt()和 parseFloat()

Number()

  1. 如果是boolean類型, true返回1,false返回0;
  2. 如果是數(shù)值,只是簡單的傳入返回;
  3. 如果是null,返回0
  4. 如果是undefined, 返回NaN;
  5. 如果是字符串,字符串如果只包含數(shù)字,則將其轉(zhuǎn)換成十進制數(shù);如果是有效的浮點格式,將其轉(zhuǎn)換成對應的浮點數(shù)值;如果是二進制或十六進制將其轉(zhuǎn)換成對應的十進制數(shù)值;
alert(Number("3.14e5"));  // 314000
alert(Number("0b1111"));  // 15, 將二進制轉(zhuǎn)換為十進制
alert(Number("017"));    // 17, 不會轉(zhuǎn)為8進制
alert(Number("0x1a"));   // 26, 轉(zhuǎn)換為16進制
alert(Number(""));     // 空字符串,返回0
alert(Number("1a"));    // 返回NaN

   6.如果是對象,調(diào)用對象的valueOf()方法,然后依照前面規(guī)則轉(zhuǎn)換,如果valueOf返回值是NaN,則調(diào)用toString()方法,再依照前面的規(guī)則轉(zhuǎn)換返回的字符串

parseInt()

第一個參數(shù),要解析的數(shù)值字符串;第二個參數(shù)采用多少進制,不指定基數(shù)意味著讓 parseInt()決定如何解析輸入的字符串;

  1. 如果第一個字符不是數(shù)字字符或者負號, parseInt()就會返回 NaN;
  2. parseInt()轉(zhuǎn)換空字符串會返回 NaN
  3. 如果第一個字符是數(shù)字字符, parseInt()會繼續(xù)解析第二個字符,直到解析完所有后續(xù)字符或者遇到了一個非數(shù)字字符。
parseInt("1234blue")  // 1234, blue忽略

parseInt("22.5");  // 22

parseInt不能解析二進制的數(shù)值,在ES5中,也不能解析八進制的數(shù)值;

parseInt("0b1111");   // 0
parseInt("071");  // 71,

parseFloat()

  1. parseFloat()只解析十進制值,因此它沒有用第二個參數(shù);
  2. 從第一個字符(位置 0)開始解析每個字符。而且也是一直解析到字符串末尾,或者解析到遇見一個無效的浮點數(shù)字字符為止;
  3. 它始終都會忽略前導的零
var num1 = parseFloat("1234blue"); //1234 (整數(shù))
var num2 = parseFloat("0xA"); //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

總結

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。

相關文章

最新評論

沈阳市| 琼中| 正定县| 安吉县| 永顺县| 来凤县| 黄冈市| 鄱阳县| 忻城县| 商水县| 林西县| 绥江县| 榆林市| 南木林县| 贵阳市| 大连市| 溧阳市| 车险| 怀化市| 东丰县| 青川县| 通辽市| 象州县| 井陉县| 秭归县| 丽江市| 锡林浩特市| 莆田市| 长海县| 监利县| 都匀市| 阜平县| 沛县| 蕉岭县| 云南省| 绍兴市| 武鸣县| 永胜县| 台中县| 南昌县| 昌宁县|