标签:

Math对象:数学对象,提供对数据的数学计算。如:获取绝对值,向上取整等。无构造函数,无法被初始化,只提供静态属性和方法。

Number对象:Js中提供的数字的对象。包含整数,浮点数等等。并提供数字的类型转换,小数点截取等方法。

1.Math对象

1.1介绍

Math对象,是数学对象,提供对数据的数学计算。如:获取绝对值,向上取整等。无构造函数,无法被初始化,只提供静态属性和方法

1.2.构造函数

没有构造函数,无法被初始化,只提供静态属性和方法。

1.3静态属性

1.3.1Math.E

Math.E:常量e。返回自然对数的底数:2.718281828459045

1.3.2 Math.PI:

Math.PI 常量∏。返回圆周率的值:3.141592653589793

1.4 静态方法

1.4.1 Math.sin(value) :正弦函数

1.4.2 Math.cos(value):余弦函数

1.4.3 Math.tan(value):正切函数

1.4.4 Math.asin(value):反正弦函数

1.4.5 Math.acos(value) :反余弦函数

1.4.6 Math.atan(value) :反正切函数

1.4.7 Math.abs(value):返回绝对值

参数:

value{Number|NumberStr}:数字或者纯数字的字符串

返回值

{Number}返回参数的绝对值数字。若参数不为数字,返回NaN。

示例

Math.abs(‘123‘); // => 123 :纯数字字符串
Math.abs(‘-123‘); // => 123
Math.abs(123); // => 123
Math.abs(-123); // => 123
Math.abs(‘123a‘); // => NaN :非纯数字字符串

1.4.8 Math.ceil(value):对一个数向上取整 并不是四舍五入

参数:

value:{Number|NumberStr} 数字或者纯数字的字符串。

返回值

{Number}:返回取整后的值,若参数不为数字,返回NaN。

示例:

Math.ceil(2.7); // => 3
Math.ceil(2.3); // => 3 :2.3 向上取整返回 3
Math.ceil(-2.7); // => -2
Math.ceil(-2.3); // => -2
Math.ceil(‘2.7‘); // => 3 :纯数字字符串
Math.ceil(‘2.7a‘); // => NaN :非纯数字字符串

1.4.9 Math.floor(value):对一个数向下取整,并不是四舍五入

参数:

value:{Number|NumberStr} 数字或者纯数字的字符串

返回值:

{Number}返回取整后的值。若参数不为数字,返回NaN

示例:

Math.floor(2.7); // => 2
Math.floor(2.3); // => 2
Math.floor(-2.7); // => -3 :-2.7 向下取整返回 -3
Math.floor(-2.3); // => -3
Math.floor(‘2.7‘); // => 2 :纯数字字符串
Math.floor(‘2.7a‘); // => NaN :非纯数字字符串

1.4.10 Math.max(value1,value2,value3.....valueN):返回参数中最大的值

参数:

(1)value1,value2......valueN{Number|NumberStr}数字或者纯数字的字符串

返回值:

{Number}返回最大值,若一个参数不为数字 返回NaN.

示例:

Math.max(1, 2, 3, 4, 5); // => 5
Math.max(1, 2, 3, 4, ‘5‘ ); // => 5
Math.max(1, 2, 3, 4, ‘a‘); // => NaN

1.4.11 Math.min(value1,value2......valueN):返回参数重最小的值

参数:

value1,value2.....valueN:{Number|NumberStr}数字或者纯数字的字符串

返回值

{Number}返回参数中的最小值,若有一个不为数字,则返回NaN

示例:

Math.min(1, 2, 3, 4, 5); // => 1
Math.min(‘1‘, 2, 3, 4, 5); // => 1
Math.min(1, 2, 3, 4, ‘a‘); // => NaN

1.4.12 Math.pow(x,y):返回x的y次方

参数:

(1)x{Number|NumberStr}:数字或者纯数字的字符串

(2)y{Number|NumberStr}:数字或者纯数字的字符串

返回值

{Number}返回x的y次方,若一个参数不为数字,返回NaN。

示例:

Math.pow(2, 3); // => 8 :2的3次方
Math.pow(3, 2); // => 9 :3的2次方
Math.pow(‘4‘, 2); // => 16 :4的2次方
Math.pow(‘2a‘, 2); // => NaN

1.4.13 Math.random():返回一个伪随机数,大于0,小于1.0

参数:无

返回值:

{Number}返回一个伪随机数 大于0小于1.0

示例:

Math.random(); // => 0.8982374747283757
Math.random(); // => 0.39617531932890415
Math.random(); // => 0.35413061641156673
Math.random(); // => 0.054441051790490746

1.4.14 Math.round(value):四舍五入后取整

参数:

value{Number|NumberStr} 数字或者纯数字的字符串

返回值:

{integer}返回四舍五入后的整数,若参数不为数字 返回NaN

示例

Math.round(2.5); // => 3
Math.round(2.4); // => 2
Math.round(-2.6); // => -3
Math.round(-2.5); // => -2 :-2.5四舍五入为 -2
Math.round(-2.4); // => -2
Math.round(‘2.7‘); // => 3 :纯数字字符串
Math.round(‘2.7a‘); // => NaN :非纯数字字符串

1.4.15 Math.sqrt(value):返回参数的平方根

参数:

value{Number|NumberStr}:数字或者纯数字的字符串

返回值

{Number}返回参数的平方根

示例:

console.log( Math.sqrt(9) ); // => 3
console.log( Math.sqrt(16) ); // => 4
console.log( Math.sqrt(‘25‘) ); // => 5
console.log( Math.sqrt(‘a‘) ); // => NaN

2.Number 对象

2.1 介绍

Number 对象 是数字对象,包含Js中的整数,浮点数等等。

2.2 定义

var a = 1;
var b = 1.1;

2.3 静态属性

2.3.1 Number.MAX_VALUE:表示Js中最大的数字,约为1.79e+308
2.3.2 Number.MIN_VALUE:表示Js中最小的数字,约为5e-324
2.3.3 Number.NaN:返回NaN 表示非数字值,与任意其他数字不等,也包括NaN本身。应使用Number.isNaN() 来进行判断。

2.3.4 Number.NEGATIVE_INFINITY :返回 -Infinity ,表示负无穷。
2.3.5 Number.POSITIVE_INFINITY  :返回 Infinity ,表示正无穷。进行计算的值大于Number.MAX_VALUE就返回 Infinity 。

2.4 静态方法

2.4.1 Number.isInteger(value)判断参数是否为整数

参数:

(1)value{Number}数字

返回值:

{Boolean} 返回参数是否为整数,纯整数的字符串也返回false

示例:

Number.isInteger(1); // => true
Number.isInteger(1.1); // => false
Number.isInteger(‘1‘); // => false :纯整数的字符串也返回false
Number.isInteger(‘1.1‘); // => false
Number.isInteger(‘a‘); // => false :非字符串返回false

2.4.2 Number.isNaN(value)判断参数是否为NaN

参数:

value{Object}任意类型

返回值

{Boolean} 返回参数是否为NaN

示例

Number.isNaN(NaN); // => true
Number.isNaN(‘NaN‘); // => false :‘NaN‘字符串,并不为NaN
Number.isNaN(1); // => false
Number.isNaN(‘1‘); // => false

2.4.3 Number.parseFloat(value):把参数转换为浮点数

(1)value {Number|NumberStr}数字或者纯数字的字符串

返回值

{Integer|Float}返回整数或者浮点数数值

示例

Number.parseFloat(1); // => 1 :整数还是返回整数
Number.parseFloat(1.1); // => 1.1
Number.parseFloat(‘1aaa‘); // => 1 :字符串前面为数字的,只返回数字
Number.parseFloat(‘1.1aaa‘); // => 1.1
Number.parseFloat(‘a1‘); // => NaN :非数字开头,返回NaN
Number.parseFloat(‘a‘); // => NaN

2.4.4 Number.parseInt(value) :把参数转换为整数

参数:

①value {Number | NumberStr} :数字或者纯数字的字符串

返回值:

{Integer} 返回整数数值

示例:

Number.parseInt(1); // => 1
Number.parseInt(1.1); // => 1 :浮点数返回整数
Number.parseInt(‘1aaa‘); // => 1 :字符串前面为数字的,只返回数字
Number.parseInt(‘1.1aaa‘); // => 1
Number.parseInt(‘a1‘); // => NaN :非数字开头,返回NaN
Number.parseInt(‘a‘); // => NaN

2.5 实例方法

2.5.1 toExponential(value) :将一个数字转为指数类型,参数表示小数点后的位数

参数:

①value {Number}  :表示小数点后的位数

返回值:

{String} 返回转换后的指数类型字符串

示例

(123456789).toExponential(2); // => 1.23e+8 :小数点2位
(123456789).toExponential(5); // => 1.23457e+8 :小数点5位
(123456789).toExponential(10); // => 1.2345678900e+8 :小数点10位,不足位数用0补位

2.5.2 toFixed(value) :将一个数字转换为指定小数位数的字符串。不传入参数,就是没小数位。返回值为四舍五入

参数:

①value {Number}  :表示小数点后的位数

返回值:

{String} 返回转换后的字符串;不够小数位以0填充;返回值为四舍五入后的值

示例:

console.log((1).toFixed(2)); // => 1.00
console.log((1.2).toFixed(2)); // => 1.20 :不足位数,以0补位
console.log((1.277).toFixed(2)); // => 1.28 :进行了四舍五入

2.5.3 toString() :使用指定的进制,将一个数字转换为字符串。不传入参数,默认为十进制。

参数:

①value {Number}  :表示进制数,取值范围:2到36

返回值:

{String} 转换后进制的字符串

示例:

(10).toString(); // => 10 :默认为十进制
(10).toString(2); // => 1010 :二进制
(10).toString(10); // => 10 :十进制
(10).toString(16); // => a :十六进制

2.6 应用场景

2.6.1 浮点数的加减乘除异常

说明:Js中的2个浮点数进行加减乘除运算,会返回异常的数值,如:0.2+0.7,返回0.899999999999。可以使用toFixed()方法,指定小数位。

示例:

console.log(0.2 + 0.7); // => 0.8999999999999999
console.log(0.7 - 0.5); // => 0.19999999999999996
console.log(3.03 * 10); // => 30.299999999999997 // 使用toFixed()方法
console.log( (0.2 + 0.7).toFixed(2) ); // => 0.90
console.log( (0.7 - 0.5).toFixed(2) ); // => 0.20
console.log( (3.03 * 10).toFixed(2) ); // => 30.30

2.6.2 减法运算

说明:Js中进行减法运算时,会先把前后的值转换为数值再进行运算。若转换失败,返回NaN。

示例:

console.log(‘1‘ - 0); // => 1 :纯数字字符串减去0,可以快速转换为Nubmer对象
console.log( (‘1‘ - 0).toFixed(2) ); // => 1.00 :快速转换为Nubmer对象后调用实例方法
console.log(‘1‘ - ‘a‘); // => NaN :一方无法转换为Nubmer对象

HTML 学习笔记 JavaScript (Math和Number对象)的更多相关文章

  1. JavaScript Math和Number对象

    目录 1. Math 对象:数学对象,提供对数据的数学计算.如:获取绝对值.向上取整等.无构造函数,无法被初始化,只提供静态属性和方法. 2. Number 对象 :Js中提供数字的对象.包含整数.浮 ...

  2. JavaScript Math和Number对象研究

    1. Math 对象 1.1 介绍   Math 对象,是数学对象,提供对数据的数学计算,如:获取绝对值.向上取整等.无构造函数,无法被初始化,只提供静态属性和方法.   1.2 构造函数   无 : ...

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

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

  4. 学习笔记---Javascript事件Event、IE浏览器下的拖拽效果

    学习笔记---Javascript事件Event.IE浏览器下的拖拽效果     1. 关于event常用属性有returnValue(是否允许事件处理继续进行, false为停止继续操作).srcE ...

  5. JavaScript学习笔记(十四)——对象

    在学习廖雪峰前辈的JavaScript教程中,遇到了一些需要注意的点,因此作为学习笔记列出来,提醒自己注意! 如果大家有需要,欢迎访问前辈的博客https://www.liaoxuefeng.com/ ...

  6. JavaScript学习笔记(十五)——对象之Date,RegExp

    在学习廖雪峰前辈的JavaScript教程中,遇到了一些需要注意的点,因此作为学习笔记列出来,提醒自己注意! 如果大家有需要,欢迎访问前辈的博客https://www.liaoxuefeng.com/ ...

  7. javascript语法之number对象和Math对象

    这两个对象很简单,一个例子就能掌握用法. 一:number对象. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional// ...

  8. HTML 学习笔记 JavaScript(面向对象)

    现在让我们继续跟着大神的脚步前进 学习一下JavaScript中的面向对象的思想,其实作为一个iOS开发者,对面向对象还是比较熟悉的,但是昨晚看了一下Js中的面向对象,妈蛋 一脸萌比啊.还好有大神.让 ...

  9. Redis学习笔记一:数据结构与对象

    1. String(SDS) Redis使用自定义的一种字符串结构SDS来作为字符串的表示. 127.0.0.1:6379> set name liushijie OK 在如上操作中,name( ...

随机推荐

  1. HTML思维导图

  2. Linux(Centos)之安装Java JDK及注意事项

    1.准备工作 a.因为Java JDK区分32位和64位系统,所以在安装之前必须先要判断以下我们的Centos系统为多少位系统,命令如下: uname -a 解释:如果有x86_64就是64位的,没有 ...

  3. AMD and CMD are dead之KMDjs内核之依赖分析

    有人说js中有三座大三:this.原型链和scope tree,搞懂了他们就算是js成人礼.当然还有其他不同看法的js成人礼,如熟悉js的:OOP.AP.FP.DOP.AOP.当然还听说一种最牛B的j ...

  4. 原生JS:Function对象(apply、call、bind)详解

    Function对象(apply.call.bind) 原创文章,转摘请注明出处:苏福:http://www.cnblogs.com/susufufu/p/5850180.html 本文参考MDN做的 ...

  5. 基于git diff进行的eslint代码检测

    缘起 在项目中, 通常都会使用代码检测工具来规范团队的代码风格, 比如eslint.随着代码的不断增加, eslint进行代码检测的时间也越来越久.每次检测的时候, 需要检测的文件和实际检测的文件极度 ...

  6. 《java数据结构和算法》读书笔记

    大学时并不是读计算机专业的, 之前并没有看过数据结构和算法,这是我第一次看.         从数据结构方面来说:                数组:最简单,遍历.查找很快:但是大小固定,不利于扩展 ...

  7. LinearLayout布局问题

    LinearLayout是平时开发中很常见的线性布局方式,分为水平和竖直2种,笔者在实际使用中发现了如下问题,希望能帮到别人. 横着的LinearLayout,凡是设置x坐标的属性都不起作用,比如la ...

  8. MyBatis Generator作为maven插件自动生成增删改查代码及配置文件例子

    什么是MyBatis Generator MyBatis Generator (MBG) 是一个Mybatis的代码生成器,可以自动生成一些简单的CRUD(插入,查询,更新,删除)操作代码,model ...

  9. SQL Server 2012安装错误案例:Error while enabling Windows feature: NetFx3, Error Code: -2146498298

    案例环境: 服务器环境 :    Windows Server 2012 R2 Standard 数据库版本 :    SQL Server 2012 SP1 案例介绍:   在Windows Ser ...

  10. alpha-beta剪枝搜索

    •一种基于剪枝( α-βcut-off)的深度优先搜索(depth-first search). •将走棋方定为MAX方,因为它选择着法时总是对其子节点的评估值取极大值,即选择对自己最为有利的着法: ...