在JavaScript中,采用IEEE754表示整数和浮点数

整数

十进制

let num10 = 10

八进制

let num8 = 0(1~7)

JavaScript中,八进制数值以0作为前导,后续数值为1~7,如果超出这个范围,则会自动忽略前导0,作为十进制数值来判断

十六进制

let num16 = 0x(0~9 及A~F)

十六进制以0x作为前导,后续数值为0~9 及A~F(或a~f,大小写都可),如果超出这个范围,则会报错

浮点数

浮点数占用的内存空间是整数的两倍

数值必须包含一个小数点

小数点前面可以没有整数,但不推荐这种写法

小数点后面必须至少有一位数且不能为0,否则将被当成整数处理

数值范围

最大:Number_MAX_VALUE

最小:Number_MIN_VALUE

超出将显示Infinity,正数为Infinity,负数为-Infinity

NaN

如果某一数值操作,本应返回数值却没有返回,那么将返回NaN

NaN不等于任何值,包括NaN本身

在JavaScript中,0除以0等于NaN,正数除以0返回Infinity,负数除以0返回-Infinity

isNaN()方法用来测试数值是否为“NaN”(not a number)

数值转换

Number()函数的转换规则如下。
 如果是Boolean 值,true 和false 将分别被转换为1 和0。
 如果是数字值,只是简单的传入和返回。
 如果是null 值,返回0。
 如果是undefined,返回NaN。
 如果是字符串,遵循下列规则:
   如果字符串中只包含数字(包括前面带正号或负号的情况),则将其转换为十进制数值,即"1"
  会变成1,"123"会变成123,而"011"会变成11(注意:前导的零被忽略了);
   如果字符串中包含有效的浮点格式,如"1.1",则将其转换为对应的浮点数值(同样,也会忽
  略前导零);
   如果字符串中包含有效的十六进制格式,例如"0xf",则将其转换为相同大小的十进制整
  数值;
   如果字符串是空的(不包含任何字符),则将其转换为0;
   如果字符串中包含除上述格式之外的字符,则将其转换为NaN。

 如果是对象,则调用对象的valueOf()方法,然后依照前面的规则转换返回的值。如果转换
的结果是NaN,则调用对象的toString()方法,然后再次依照前面的规则转换返回的字符
串值。
parseInt()

忽略字符串前面的空格,从遇到的第一个数字字符或负号开始转换,如果为空字符串,则返回NaN(Number()返回0)

可以识别十进制,八进制,十六进制

不能识别小数点

转换时使用的基数(即多少进制)

var num = parseInt("0xAF", 16); //175

parsefloat()

从位置0开始解析,只有第一个小数点有效

始终忽略前导0

只解析十进制字符串,十六进制字符串始终为0

var num1 = parseFloat("1234blue"); //1234 (整数)
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

JavaScript学习—基本类型—Number的更多相关文章

  1. javascript学习-基本类型

    javascript学习-基本类型 1.概述 javascript的数据类型大体上分两种:基本类型和对象类型.简单的区分就是基本类型是无法再分的原子级类型:对象类型是容器,可以容纳基本类型和对象类型. ...

  2. javascript学习笔记(四) Number 数字类型

    数字格式化方法toFixed().toExponential().toPrecision(),三个方法都四舍五入 toFixed() 方法指定小数位个数  toExponential() 方法 用科学 ...

  3. Javascript学习1 - Javascript中的类型对象

    原文:Javascript学习1 - Javascript中的类型对象 1.1关于Numbers对象. 常用的方法:number.toString() 不用具体介绍,把数字转换为字符串,相应的还有一个 ...

  4. javascript学习-类型判断

    javascript学习-类型判断 1.类型判断的的武器 javascript中用于类型判断的武器基本上有以下几种: 严格相等===,用来判断null,undefined,true,false这种有限 ...

  5. JavaScript 学习笔记: 扩充类型的功能

    JavaScript 是允许给基本类型扩充功能的.例如,可以通过对Object.prototype增加方法,可以让该方法对所有的对象都可用. 这样的方式对函数,数组,字符串,数字,正则表达式和布尔值同 ...

  6. JavaScript学习 - 基础(二) - 基础类型/类型转换

    基础类型 - 数字类型(Number) 1.最基本的数据类型 2.不区分整型数值和浮点型数值 3.所有数字采用64位浮点格式存储,相当于Java和C语言中double格式 4.能表示的最大值 +- 1 ...

  7. JavaScript学习总结(十八)——JavaScript获取浏览器类型与版本

    从网上找到一段使用JavaScript判断浏览器以及浏览器版本的比较好的代码,在此记录一下: 1 <script type="text/javascript"> 2 v ...

  8. JavaScript学习10 JS数据类型、强制类型转换和对象属性

    JavaScript学习10 JS数据类型.强制类型转换和对象属性 JavaScript数据类型 JavaScript中有五种原始数据类型:Undefined.Null.Boolean.Number以 ...

  9. JavaScript学习09 函数本质及Function对象深入探索

    JavaScript学习09 函数本质及Function对象深入探索 在JavaScript中,函数function就是对象. JS中没有方法重载 在JavaScript中,没有方法(函数)重载的概念 ...

随机推荐

  1. CLion在项目里编译不同文件

    1. 在完整的项目下找到CMakeList.txt(项目配置文件) 2. Build 和 Run的目标在add_executable参数中 3. 将其修改为如下格式:add_executable(pr ...

  2. 关于Icon,Image,ImageIcon的简单的对比参考

    Icon: Icon位于javax.swing包中,它是一个接口 public interface Icon,介绍为:一个小的固定大小的图片,通常用于装饰组件 有三个方法: int getIconHe ...

  3. Firewall 防火墙

    firewalld和iptables的关系: firewalld自身并不具备防火墙的功能,而是和iptables一样需要通过内核的netfilter来实现.也就是说firewalld和iptables ...

  4. 连接数据库方法---DAO,RDO,OLE,ADO

    2012-12-14 09:40 (分类:计算机程序) DAO (Data Access Objects) 提供了一种通过程序代码创建和操纵数据库的机制.最大特点是对MICROSOFT JET(Jet ...

  5. [Redis-CentOS7]Redis哈希操作(五)

    哈希相当于下面Python代码 { "person":{ "name": "peigy", "age": "1 ...

  6. python新手如何编写一个猜数字小游戏

    此文章只针对新手,希望大家勿喷,感谢!话不多说先上代码: import random if __name__ == '__main__': yourname = input("你好! 你的名 ...

  7. if-else连用时的陷阱

    近日,在实现<The C  Programing Language>上的一个练习题时,写出了下面一段代码 ; i<=right; i++) { ) ) swap(v, i, ++la ...

  8. input禁止输入后,触发事件,在苹果手机的页面会滚动

    在vue中,<input type="text" readonly="readonly" @click=""/>,点击跳转页面. ...

  9. JS正则表达式的创建、匹配字符串、转义、字符类、重复以及常用字符

    正则表达式都是操作字符串的 作用:对数据进行查找.替换.有效性验证 创建正则表达式的两种方式: // 字面量方式 /js/ // 构造函数方式 regular expression new RegEx ...

  10. sqli-labs-Basic Challenges

    sqli_labs注入学习 一.SQL基本语法 1.1show databases; 显示MySQL数据库里边所有的库: 1.2use [table name]; 使用特定的数据库: 1.3show ...