博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaScript之Number
阅读量:6326 次
发布时间:2019-06-22

本文共 2994 字,大约阅读时间需要 9 分钟。

hot3.png

    java里面表示数字的基本数据类型分为short、int、long、float、double类型;而在JavaScript里面,表示数字的基本数据类型只有一种:number,统一按浮点数处理,64位存储,整数是按最大54位(正负2的53次方)来算最大最小数的,否则会丧失精度,某些操作(如数组索引还有位操作)是按32位(正负2的31次方)处理的。我们这里说的 Number 对象是原始数值的包装对象。

    在JavaScript中,数字是一种基本的数据类型,在必要时,JavaScript 会自动地在原始数据和对象之间转换。 声明一个数字变量,如:

var age=10;

    Number() 和运算符 new 一起作为构造函数使用时,它返回一个新创建的 Number 对象。 声明一个数字Number对象,如:

var Age=new Number(10);

    将一个数据转换为数字类型,如:

//如果不用 new 运算符,把 Number() 作为一个函数来调用,它将把自己的参数转换成一个原始的数值,//并且返回这个值(如果转换失败,则返回 NaN)var age0=Number("10");//10var age1=Number("10.5");//10.5var age2=Number("10a");//NaNvar age3=Number("a10a");//NaNvar age4=parseInt("10");//10var age5=parseInt("10.5");//10var age6=parseInt("10a");//10var age7=parseInt("a10a");//NaNvar age8=parseFloat("10");//10var age9=parseFloat("10.5");//10.5var age10=parseFloat("10a");//10var age11=parseFloat("a10a");//NaN

    Number对象的属性:

//MAX_VALUE :JavaScript 中可表示的最大的数。它的近似值为 1.7976931348623157 x 10308。Number.MAX_VALUE;//1.7976931348623157e+308//MIN_VALUE : JavaScript 中可表示的最小的数(接近 0 ,但不是负数)。它的近似值为 5 x 10-324。Number.MIN_VALUE;//5e-324//NaN :代表非数字值的特殊值。该属性用于指示某个值不是数字。可以把 Number 对象设置为该值,来指示其不是数字值。//用isNaN()来判断一个值是否是数字。原因是 NaN 与所有值都不相等,包括它自己。Number.NaN;//NaN//NEGATIVE_INFINITY 属性表示小于 Number.MIN_VALUE 的值。//在算术运算或函数生成一个比 JavaScript 能表示的最小负数还小的数(也就是比-Number.MAX_VALUE 还小的数)时返回。Number.NEGATIVE_INFINITY;//-Infinity//POSITIVE_INFINITY 属性表示大于 Number.MAX_VALUE 的值。//在算术运算或函数生成一个比 JavaScript 能表示的最大的数还大的数(也就是比Number.MAX_VALUE 还大的数)时返回。Number.POSITIVE_INFINITY;//Infinity

    Number对象的方法:

var Age=new Number(24);//toString() 方法可把一个 Number 对象转换为一个字符串,并返回结果。参数可选。规定表示数字的基数,//使 2 ~ 36 之间的整数。若省略该参数,则使用基数 10。但是要注意,如果该参数是 10 以外的其他值,//则 ECMAScript 标准允许实现返回任意值。Age.toString();//"24"Age.toString(2);//"11000"Age.toString(8);//"30"Age.toString(16);//"18"//toLocaleString() 方法可把一个 Number 对象转换为本地格式的字符串。//数字的字符串表示,由实现决定,根据本地规范进行格式化,可能影响到小数点或千分位分隔符采用的标点符号。Age=new Number(10000);Age.toLocaleString();//"10,000"Age.toString();//"10000"//toFixed(num) 方法可把 Number 四舍五入为指定小数位数的数字。参数必需。规定小数的位数,是 0 ~ 20 之间的值,//包括 0 和 20,有些实现可以支持更大的数值范围。如果省略了该参数,将用 0 代替。返回 NumberObject 的字符串表示,//不采用指数计数法,小数点后有固定的 num 位数字。如果必要,该数字会被舍入,也可以用 0 补足,以便它达到指定的长度。//如果 num 大于 le+21,则该方法只调用 NumberObject.toString(),返回采用指数计数法表示的字符串。Age.toFixed(0);//"10000"Age.toFixed();//"10000"Age.toFixed(12);//"10000.000000000000"//toExponential() 方法可把对象的值转换成指数计数法。参数必需。规定指数计数法中的小数位数,//是 0 ~ 20 之间的值,包括 0 和 20,有些实现可以支持更大的数值范围。如果省略了该参数,将使用尽可能多的数字。//返回 NumberObject 的字符串表示,采用指数计数法,即小数点之前有一位数字,小数点之后有 num 位数字。//该数字的小数部分将被舍入,必要时用 0 补足,以便它达到指定的长度。Age.toExponential();//"1e+4"Age.toExponential(2);//"1.00e+4"//toPrecision() 方法可在对象的值超出指定位数时将其转换为指数计数法。参数必需。规定必须被转换为指数计数法的//最小位数。该参数是 1 ~ 21 之间(且包括 1 和 21)的值。有效实现允许有选择地支持更大或更小的 num。//如果省略了该参数,则调用方法 toString(),而不是把数字转换成十进制的值。Age.toPrecision();//"10000"Age.toPrecision(3);//"1.00e+4"Age.toPrecision(10);//"10000.00000"Age.toPrecision(15);;//"10000.0000000000"

    JavaScript 可以自动地在原始数据和对象之间转换,我们一般不会用构造函数 Number() 明确地创建一个 Number 对象,但是了解Number对象的方法,可以方便我们需要的时候直接使用。

 

 

 

 

 

转载于:https://my.oschina.net/liuyongfov/blog/759235

你可能感兴趣的文章
Step By Step(Lua调用C函数)
查看>>
java的动态代理机制详解
查看>>
[LeetCode] Merge Sorted Array
查看>>
团队编程项目作业3-模块开发过程
查看>>
BZOJ1187:[HNOI2007]神奇游乐园——题解
查看>>
BZOJ3930:[CQOI2015]选数——题解
查看>>
CGI FASTCGI php-fpm
查看>>
在fragment中获取Application数据
查看>>
详解CSS float属性(转)
查看>>
利用JDBC连接Oracle数据库(转)
查看>>
songs
查看>>
vscode 解决符号无法识别的问题
查看>>
js通过replace()方法配合正则去除空格
查看>>
第一课:HTML
查看>>
[cb]Unity 项目架构
查看>>
Java基本语法-----java流程控制语句
查看>>
【面试 网络协议】【第十四篇】网络协议篇
查看>>
指令汇B新闻客户端开发(二) 主页面布局
查看>>
获取文本区域(textarea)行数【换行获取输入用户名个数】
查看>>
Mysql常用命令详解
查看>>