11 JavaScript Number原始值&对象&科学记数法&范围&进制转换&溢出Infinity&NaN
JavaScript Number对象
- 是经过封装的能处理数字值的对象
- 由Number()构造器创建
- 只有一种数字类型
- 可以使用也可以不使用小数点书写数字
JavaScript原始值与对象:
- 在JavaScript中,除了原始值都是对象
- 原始值通常包括数字、字符串、布尔值(如果不是用new Object()形式定义的话)
- 原始值不包含方法和属性
JavaScript数值:始终是64位的浮点数
与其他类型的语言不同,JavaScript始终以64位双精度浮点数来存储数值,0-51存储值,52-62存储指数,63存储符号
数字属性:
- MAX_VALUE
- MIN_VALUE
- NEGATIVE_INFINITY
- POSITIVE_INFINITY
- NaN
- prototype
- constructor
数字方法:
- toExponential() 转换成指数计数法
- toFixed() 四舍五入,如toFixed(2),四舍五入保留2位小数
- toPrecision() 将数值转换为指定的长度
- toString()
- valueOf()
科学计数法:
var y = 123e5 = 12300000;
var z = 123e-5 = 0.00123;
所有JavaScript数字均为64位
JavaScript不是类型语言,不定义不同类型的数字,比如整数,短,长,浮点等等。
JavaScript所有的数字都是64位浮点类型,最大值为±1.7976931348623157 x 10308,最小值为±5 x 10 -324。(位即比特,0和1)
JavaScript进制转换:
- number.toString(16);输出16位
- number.toString(8);输出8位
- number.toString(2);输出2位
<script type="text/javascript" charset="utf-8">
var x = 128;
document.write(x+" 十进制</br>");
document.write(x.toString(16)+" 十六进制</br>");
document.write(x.toString(8)+" 八进制</br>");
document.write(x.toString(2)+" 二进制</br>");
</script>
无穷大(Infinity)
- 当数字运算结果超出了JavaScript所能表示的数字上限(溢出),结果为一个无穷大值,在JavaScript中以Infinity表示。
- 当负数的值溢出,结果为负无穷大,以-Infinity表示。无穷大的运算结果为保留符号的无穷大。
- 除0也是无限,带符号。
NAN 非数字值
- 一般用isNaN()判断是否不是数字.
- 在JavaScript中,如果数值无法被转换成数字,那么返回NaN.
- 在JavaScript中,数字可以是数值或者对象.
11 JavaScript Number原始值&对象&科学记数法&范围&进制转换&溢出Infinity&NaN的更多相关文章
- 什么是JavaScript的原始值?
JavaScript的原始值是指数字.字符串.布尔值.null和undefined. JavaScript的数据类型分为两类:原始类型(primitive type)和对象类型(object type ...
- javascript . 04 匿名函数、递归、回调函数、对象、基于对象的javascript、状态和行为、New、This、构造函数/自定义对象、属性绑定、进制转换
匿名函数: 没有名字的函数,函数整体加小括号不报错, 函数调用 : a:直接调用 (function (){函数体}) ( ) ; b:事件绑定 document.onlick = functio ...
- JavaScript下的进制转换
JavaScript下的进制转换 //十进制转其他进制 var num = 99; console.log('十进制: ', num); console.log('八进制:', (num).toStr ...
- 【JavaScript】进制转换&位运算,了解一下?
前言 在一般的代码中很少会接触到进制和位运算,但这不代表我们可以不去学习它.作为一位编程人员,这些都是基础知识.如果你没有学过这方面的知识,也不要慌,接下来的知识并不会很难.本文你将会学习到: 进制转 ...
- JavaScript中的多种进制与进制转换
进制介绍 JavaScript 中提供的进制表示方法有四种:十进制.二进制.十六进制.八进制. 对于数值字面量,主要使用不同的前缀来区分: 十进制(Decimal): 取值数字 0-9:不用前缀. 二 ...
- JavaScript检测原始值、引用值、属性
上周写过一篇读书笔记<编写可维护的JavaScript>之编程实践,其中 第8章 避免『空比较』是博主在工作中遇坑较多的雷区,所以特此把该章节重新整理分享,希望大家不再坑队友(>﹏& ...
- JavaScript原始类型转换和进制转换
1.JavaScript转换包括:强制转换和基本转换 如: var str = 'A',num=10,nu=null,t=true,und=undefined,x; //注意:定义的x未被初始化:默 ...
- JavaScript的进制转换
先介绍两个API: 一.number 类型的 toString 方法 语法 JavaScript: numberObject.toString( [ radix ] ) 参数 参数 描述 radix ...
- 枚举 + 进制转换 --- hdu 4937 Lucky Number
Lucky Number Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)To ...
随机推荐
- const和defin区别
(1)类型的安全性检查:const常量有数据类型,而define定义宏常量没有数据类型.则编译器可以对前者进行类型安全检查,而对后者只进行字符替换,没有类型安全检查(字符替换时可能会产生意料不到的错误 ...
- Flask 学习之flask入门
一.Flask的简单介绍 Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请 ...
- IDEA中使用maven下载插件速度很慢解决方法
1.打开IDEA的File--->settings--->搜索mavaen--->找到settings.xml 2.在settings.xml中添加 <!-- 阿里云仓库 -- ...
- malloc实现机制
使用过c语言的都知道malloc是一个动态分配内存的函数,还可以通过free释放内存空间. 如果我们想分析一下malloc的源码,这其实不是一会就能看懂的,但是我们可以讨论一下malloc的简单实现. ...
- Ubuntu18.04配置中文输入法(系统自带的)
Ubuntu18.04配置中文输入法 之前安装Ubuntu18.04的时候选择了english,现在要配置中文的输入法 打开系统设置 点击其中的工具按钮左边第一个 点击管理语言 ==如果系统刚安装可能 ...
- NOIP--模拟—————神奇的幻方
神奇的幻方 题目描述 幻方是一种很神奇的 N*N 矩阵:它由数字 1,2,3,-N x N 构成,且每行.每列及两条对角线上的数字之和都相同. 当 N 为奇数时,我们可以通过下方法构建一个幻方: 首先 ...
- 自己实现java中Iterator(迭代器功能)
今天躺在床上忽然想到一个问题,迭代器的代码是如何实现的?于是乎不由自主的爬起来敲两行代码. List<String> list=new ArrayList<>(2); list ...
- 实现一个简易的Unity网络同步引擎——netgo
实现一个简易的Unity网络同步引擎Netgo 目前GOLANG有大行其道的趋势,尤其是在网络编程方面.因为和c/c++比较起来,虽然GC占用了一部分机器性能,但是出错概率小了,开发效率大大提升,而且 ...
- Spring 的 Bean 生命周期,11 张高清流程图及代码,深度解析
在网上已经有跟多Bean的生命周期的博客,但是很多都是基于比较老的版本了,最近吧整个流程化成了一个流程图.待会儿使用流程图,说明以及代码的形式来说明整个声明周期的流程.注意因为代码比较多,这里的流程图 ...
- Django框架之ORM对表结构操作
ORM的优点:(1)简单,不用自己写SQL语句 (2)开发效率高 ORM的缺点:对于不同的人写的代码,执行效率有差别 ORM的对应关系: 类 ----------> 数据表 对象------ ...