ES6—数值(Number,Math对象)(复习+学习)

每天一学,今天要学习ES6的关于数的扩展以及复习,然后通过看书,查阅资料,以及webAPI来搞清楚遇到的,没见过的对象方法等等,下面为本次学习的笔记分类:

1.数值(表示)

2.Number对象

3.Math对象

4.总结

1.数值(表示)

1 //ES6 提供了二进制和八进制的写法(0b ||0o),0b 为二进制,0o为八进制。
2 //ES6与ES5中,ES5不许使用前缀0表示八进制,而ES6允许
3 //如果要将二或者八进制的数转化为十进制,可以使用Number对象
4 Number('0b111') //7
5 Number('0o10') //8
6 //十进制转化为其他进制(2)等等,利用num.toString('x');
7 let a = 2;
8 console.log(a.toString(2)); //10

2.Number对象

2.1 Number.isFinite(),Number.isNaN()

 1 //(1)Number.isFinite()与 全局isFinite()方法
2 //Number.isFinite() 为Number对象的一种方法,isFinite() 是全局方法,两者的目的都是为了判断一个数值是否有穷
3 ​
4 //用法区别:
5 //Number.isFinite()
6 Number.isFinite(value);
7 //全局isFinite()方法
8 isFinite(testValue)
9 ​
10 //差别:
11 Number.isFinite(value); //中的value只能是一个数值型的值,如果是字符串的数字,就会直接返回false
12 isFinite(testValue) //如果参数是一个字符串,可以先强转为数值,再进行测试
13 ​
14 isFinite("115"); //true
15 Number.isFinite("115") //false

//(2)Number.isNaN() 与 全局isNaN()
//Number.isNaN() 方法确定传递的值是否为 NaN,并且检查其类型是否为 Number,更加稳妥。
//isNaN() 只检查一个值是否为NaN

//区别用法看一个例子
isNaN(NaN);   //true
isNaN("NaN");   //true
Number.isNaN(NaN);  //true
Number.isNaN("NaN");  //false
 






2.2 Number.parseInt()与Number.parseFloat()

1 //传统的有parseInt(),parseFloat()方法,但是ES6将这两个方法放到Number对象里了,用法不变,ES6新增了模块化的概念,这样才做更利于模块化
2 ​
3 //(1)Number.parseInt() 方法依据指定基数 [ 参数 radix 的值],把字符串 [ 参数 string 的值] 解析成整数。
4 // Number.parseInt === parseInt; // true,表示两个用法一样
5 Number.parseInt(string[, radix]); // string 表示一个字符串 radix 表示表示半径(数学数值系统的基数)(了解)
6 console.log(Number.parseInt(12.25266)); //数值为非字符串的话,会调用toString方法转化,返回一个整值
7 ​
8 //(2)Number.parseFloat() 方法可以把一个字符串解析成浮点数
9 Number.parseFloat(string)

2.3 Number.isInteger()

 1 //用于判断一个数是否为整数,js中整数和浮点数的存储方法相同,因此3.0和3结果一样 2 ​ 3 number.isInteger(15.1) //false 

2.4 Number.EPSILON

 1 //仅仅表示一个极小值常量,用于判断误差范围,如果在该属性值范围内,则可以认为得到了正确答案 

  2.5 Number.isSafeInteger()  

1 //Number.isSafeInteger()方法用来判断传入的参数值是否是一个“安全整数”(safe integer)。
2 Number.isSafeInteger(testValue) //参数为要测试的值 返回一个布尔值
3 Number.isSafeInteger(3); // true
4 Number.isSafeInteger(Math.pow(2, 53)) // false

3.Math对象

  3.1 Math.trunc()

1 //Math.trunc() 方法会将数字的小数部分去掉,只保留整数部分。
2 Math.trunc(value) //value 可以取数字,返回值
3 //demo
4 Math.trunc(13.37) // 13
5 Math.trunc(42.84) // 42

3.2 Math.sign()

 1 //判断数值的种类(非数值会转化为数值)
2 Math.sign(x);
3 ​
4 //demo
5 Math.sign(3); // 1 整数返回 1
6 Math.sign(-3); // -1 复数返回-1
7 Math.sign("-3"); // -1
8 Math.sign(0); // 0 0 返回 0
9 Math.sign(-0); // -0 -0 返回-0
10 Math.sign(NaN); // NaN 非数值返回NaN

3.3 Math.cbrt()

 1 //Math.cbrt() Math.cbrt() 函数返回任意数字的立方根.非数值也会先转化为数字再操作 2 Math.cbrt(x) 3 Math.cbrt(4) //1.5874010519681996 

3.4 Math.clz32() 与 Math.imul()

1 //把这两个放一起是因为这两个都是32进制操作的,了解一下就行了,具体自行查阅
2 // Math.clz32() 函数返回一个数字在转换成 32 无符号整形数字的二进制形式后, 开头的 0 的个数, 比如 1000000 转换成 32 位无符号整形数字的二进制形式后是 00000000000011110100001001000000, 开头的 0 的个数是 12 个, 则 Math.clz32(1000000) 返回 12
3 //Math.imul() 方法返回两个数以32位带符号形式相乘的结果

3.5 Math.fround()

1 //Math.fround() 方法返回一个数的单精度浮点数形式
2 Math.fround() //0
3 Math.fround(1.337) // 1.3370000123977661

3.6 Math.hypot()

1 //Math.hypot() 函数返回所有参数的平方和的平方根
2 Math.hypot([value1[,value2, ...]]) //value1, value2, ...任意个数字,将所提供的参数求平方和后开平方根。如果有参数不能转换为数字,则返回 NaN。。
3 Math.hypot(3, 4); // 5

4.总结

本次大概学习了数值,对象方法,这些内容,我感觉有些常用的需要记忆一下,有些只需要了解一下,还有对数,双曲线,新增了一个指数运算**,等等内容可以自行查阅文档。继续努力!!

ES6—数值(Number,Math对象)(复习+学习)的更多相关文章

  1. 第一百零八节,JavaScript,内置对象,Global对象字符串编码解码,Math对象数学公式

    JavaScript,内置对象,Global对象字符串编码解码,Math对象数学公式 学习要点: 1.Global对象 2.Math对象 ECMA-262对内置对象的定义是:"由ECMASc ...

  2. es6学习笔记--字符串&数值&数组&函数&对象的扩展

    这几天抽空学习了es6语法,关于字符串,数值,数组,函数以及对象的扩展,看到es6标准入门这本书,里面讲的扩展特别多,我认为有几部分在项目上用不到,就挑有用的当笔记学习了. 字符串的扩展 str.in ...

  3. ES6(四) --- 正则 Number Math

    想学vue了  重启ES6的学习之路 在ES5 中正则的构造器  RegExp  不支持第二个参数 ES6 做了调整   第二个参数表示正则表达式的修饰符(flag) var regex = new ...

  4. Java 学习(6):java Number & Math & String & 数组...常用类型

    目录 --- Number & Math类 --- Character 类 --- String 类 --- StringBuffer 类 --- 数组 Number & Math类: ...

  5. ES6 对Math对象的扩展

    Math 对象的扩展 Math.trunc() Math.trunc(4.1) // 4 Math.trunc(4.9) // 4 Math.trunc(-4.1) // -4 Math.trunc( ...

  6. 数值(Number,Math, 运算符)

    1.js中数字 1.数字存储 Javascript中所有数字的存储都是64位浮点数.整数也一样. 1 === 1.0 // true 2. 数字大小范围 可以表示的最大正数和最小负数 (-Math.p ...

  7. ES6 之 Math对象的扩展

    1.ES5 http://www.w3school.com.cn/jsref/jsref_obj_math.asp 2.ES6 Math.trunc() - 取整,去掉一个数的小数部分 console ...

  8. JS学习笔记10之Math对象

    -->Math对象 常用属性和方法-->使用Math对象制作相应的效果 Math对象用于执行数学任务 一.Math对象的属性: 二.Math对象的方法: 三.常用属性和方法: Math.P ...

  9. JavaScript中Date(日期对象),Math对象--学习笔记

    Date对象 1.什么是Date对象? 日期对象可以储存任意一个日期,并且可以精确到毫秒数(1/1000 秒). 语法:var Udate=new Date();  注:初始值为当前时间(当前电脑系统 ...

随机推荐

  1. 支持remote write和exemplar的prometheus服务

    最近项目组在做Prometheus指标采集和告警,其中用到了Prometheus的exemplar特性,由于该特性比较新,当前支持该特性的存储有比较少.因此需要自行实现exemplar功能. 我在gi ...

  2. 多项目如何高效协同合作 | springcloud系列之bus消息总线

    前言 在springcloud config章节中我们完成了配种中心的搭建,以及通过配置中心完成配置的抽离通过springcloud config模块我们将配置抽离到git仓库中我们不必要每次为了改配 ...

  3. nodejs 安装 报错解决方案

    win10安装nodejs之后,查看版本号在终端输入node -v成功输出版本号,输入npm -v 之后报错...... 反复安装卸载之后,有点奔溃,最后的解决方案是:手动删除"C:\Use ...

  4. android-- 按需打包的框架搭建--新手教程

    1, 新建项目VariantTest 2, 生成keystore 可以看到, 默认的build variant只有debug一种 当我试图选release的时候,发现报错了 什么错呢 大致意思是说我们 ...

  5. PLSQL安装,PLSQL汉化,激活

    一)准备工作 1.点击下载PLSQL:https://www.allroundautomations.com/registered-plsqldev/.本次安装的是12.0.7,安装版本为64位 2. ...

  6. 洛谷4366——最短路(dijkstra,思维,异或)

    题目大意 给定一个n个点,m条边的图,每条边有边权,而每个点\(i\)也可以直接到达\(j\),代价是\(i\ xor\ j\),给定一个S和T,求S到T的最小代价 其中\(n\le100000,m\ ...

  7. 51.N皇后问题

    n 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击. 给定一个整数 n,返回所有不同的 n 皇后问题的解决方案. 每一种解法包含一个明确的 n 皇后问题的棋 ...

  8. vue3.x移动端适配px2rem

    1.什么是px2rem px2rem是一个插件能将px自动转换为rem,以适配各种不同的屏幕尺寸.前端开发可以直接使用设计稿量出的尺寸或者蓝湖给出的px进行布局,这样极大的提高了开发效率. 2.前提条 ...

  9. AtCoder Beginner Contest 224

    AtCoder Beginner Contest 224 A - Tires 思路分析: 判断最后一个字符即可. 代码如下: #include <bits/stdc++.h> using ...

  10. Scrum Meeting 0503

    零.说明 日期:2021-5-3 任务:简要汇报两日内已完成任务,计划后两日完成任务 一.进度情况 组员 负责 两日内已完成的任务 后两日计划完成的任务 qsy PM&前端 完成登录.后端管理 ...