ES6提供了二进制和八进制数值的新写法,分别用前缀0b(或0B)和0o(或0O)表示。

  0b111110111 === 503                    // true

  0o767 === 503                             // true

  如果要将使用0b、0o和0x前缀的字符串数值转化为十进制,要使用Number方法。

  ES6中对Number对象的拓展

  1、Number.isFinite()  //检查一个数值是否有限,返回true/false;

  2、Number.isNaN()  //检查一个值是否为NaN,返回true/false;

  3、Number.parseInt()  //将一个值转化为整数;

  4、Number.parseFloat()  //将一个值转化为浮点数;

  5、Number.isInteger()  //判断一个值对否为整数,返回true/false;

  6、Number.EPSILON  //新增一个极小的常量,2.220446049250313e-16

  7、安全整数和Number.isSafeInteger()

  JavaScript能够准确表示的整数范围在-2的53次幂到2的53次幂之间(不包含两个端点),超过这个范围就无法精确表示。ES6引入Number.MAX_SAFE_INTEGET = Math.pow(2, 53) - 1 表示安全范围的上限,引入Number.MIN_SAFE_INTEGER =  Math.pow(-2, 53) - 1表示安全范围的下限。Number.isSafeInteger()就是判断某个值是否在安全范围之内,与安全整数的两个边界值比较一下。

  ES6中对Math对象的拓展

  1、Math.trunc()  // 去除一个数的小数部分,返回整数部分;

  2、Math.sign()  //判断一个数到底是正数、负数还是0,

    其返回值有5中情况:

    1)、参数为正数,返回+1;

    2)、参数为负数,返回-1;

    3)、参数为0,返回0;

    4)、参数为-0;返回-0;

    5)、其他值,返回NaN;

  3、Math.cbrt()  //计算一个数的立方根;

  4、Math.clz32()  //JavaScript的整数使用32位二进制形式表示,返回一个数的32位无符号整数形式有多少个前导0;

  5、Math.imul()   //返回两个数以32位带符号整数形式想成的结果;

  6、Math.fround()   //返回一个数的单精度浮点数形式;

  7、Math.hypot()  // 返回所有参数平方和的平方根;

  8、对数方法

    1)、Math.expm1(x)   //返回e的x次幂减1,即Math.exp(x) - 1;

    2)、Math.log1p(x)   //返回ln(1+x),即Math.log(1+x);

    3)、Math.log10(x)   //返回以10为底的x的对数;

    4)、Math.log2(x)    //返回以2为底的x的对数;

  9、双曲函数方法

    1)、Math.sinh(x)  // 返回x的双曲正弦;

    2)、Math.cosh(x)  // 返回x的双曲余弦;

    1)、Math.tanh(x)  // 返回x的双曲正切;

    1)、Math.asinh(x)  // 返回x的反双曲正弦;

    1)、Math.acosh(x)  // 返回x的反双曲余弦;

    1)、Math.atanh(x)  // 返回x的反双曲正切;

  10、Math.signbit()  //判断一个值的正负,起返回值如下:

    1)、参数是NaN,返回false;

    2)、参数是-0,返回true;

    1)、参数是负数,返回true;

    1)、其他情况返回false;

  11、指数运算符(**)

    2 ** 2    // 4

  指数运算符和等号结合形成一个新的赋值运算符(**=)

    let a = 2;

    a **= 2等同于a = a * a

ES6标准入门之数值的拓展解说的更多相关文章

  1. ES6标准入门之字符串的拓展讲解

    在开始讲解ES6中字符串拓展之前,我们先来看一下ES5中字符串的一些方法. 获取字符串长度 str.length 分割字符串 str.split() 拼接字符串 str1+str2 或 str1.co ...

  2. ES6标准入门之正则表达式的拓展

    所谓正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式通常被用来检索.替换那些符合某个模式(规 ...

  3. ES6标准入门之变量的解构赋值简单解说

    首先我们来看一看解构的概念,在ES6标准下,允许按照一定模式从数组和对象中提取值,然后对变量进行赋值,这被称作解构,简而言之粗糙的理解就是变相赋值. 解构赋值的规则是,只要等号右边的值不是对象或者数组 ...

  4. 《ES6标准入门》(阮一峰)--7.数值的扩展

    1.二进制和八进制表示法 ES6 提供了二进制和八进制数值的新的写法,分别用前缀0b(或0B)和0o(或0O)表示. 0b111110111 === 503 // true 0o767 === 503 ...

  5. ES6标准入门 第五章:数值的扩展

    1.二进制和八进制数值表示法 二进制前缀:0b(或0B):   八进制前缀:0o(或0O). 注意:ES5的严格模式 和 ES6中不再允许使用 0  表示八进制. 将二进制和八进制数值转换为十进制数值 ...

  6. 《ES6标准入门》(阮一峰)--11.对象的新增方法

    1.Object.is() ES5 比较两个值是否相等,只有两个运算符:相等运算符(==)和严格相等运算符(===).它们都有缺点,前者会自动转换数据类型,后者的NaN不等于自身,以及+0等于-0.J ...

  7. 【学习笔记】ES6标准入门

    这里简要记录一下对自己感触比较深的几个知识点,将核心的应用投放于实际的项目之中,提供代码的可维护性. 一.let和const { // let声明的变量只在let命令所在的代码块内有效 let a = ...

  8. [转] 《ES6标准入门》读书笔记

    来源:https://segmentfault.com/a/1190000005863641 let和const命令 ES6新增let命令,用于声明变量,是块级作用域. let声明的变量不会像var声 ...

  9. ES6标准入门 第一章:简介

    ECMAScript 6 是JavaScript 语言的下一代标准:发布于2015年,又称为ECMAScript 2015. ECMAScript 与 JavaScript 的关系:前者是后者的规范, ...

随机推荐

  1. C#图片处理类

    转载來源:简书 转载作者:幻凌风 转载来源:https://www.jianshu.com/p/e1bab83e87ce using System; using System.Collections; ...

  2. 【转】classpath和环境变量设置

    http://www.360doc.com/content/12/0722/14/820209_225797366.shtml 在没有设置环境变量之前,我们可以通过直接在应用程序中加带相关信息来运行我 ...

  3. 关于JavaScript原型对象那些事儿

    ①为什么要使用原型:为了实现继承. ②利用constructor属性可以让实例化对象轻松访问原型,实现实例化对象对原型对象的修改,但是原型对象是全局对象,一般不能随意修改原型对象的成员.该属性多用于调 ...

  4. javascript原型对象与原型链

    在javascript中,当系统加载构造函授后 ,会自动在内存中增加一个对象,这个对象就是原型对象.构造函数和原型对象在内存中表现为相互独立,但两者之间还存在联系,构造函数的prototype是原型对 ...

  5. js-ES6学习笔记-async函数(3)

    1.await命令后面的Promise对象,运行结果可能是rejected,所以最好把await命令放在try...catch代码块中. 2.多个await命令后面的异步操作,如果不存在继发关系,最好 ...

  6. html5+css3图片旋转特效

    <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8" ...

  7. ConcurrentDictionary的用法

    private static ConcurrentDictionary<Guid, string> dictDbNames = new ConcurrentDictionary<Gu ...

  8. 光杆mdf文件的导入

    场景,准备学习SSAS的时候,按照教程在微软下载了示例数据库AdventureWorksDW2012,下载来才发现只有一个mdf文件. 正好今天群里有位兄弟也碰到差不多的问题,客户数据库里的ldf文件 ...

  9. C语言的历史及个人拙见

    C语言是一个无限广阔的世界,你刚开始睁眼看它的时候以为视线的尽头就是边界,但当你慢慢走去,才发现天外有天.这或许就是江湖传说只有C才有真正高手的原因,或许我们也可以反过来说:C没有高手——因为没有人能 ...

  10. django导入自定义模块

    自定义模块cust.py位于应用aptest目录下 1.编辑settings.py from aptest import cust 2.编辑views.py from cust import pc # ...