数字的方法和函数

数字

    数字的特点

      1.number存储空间固定(有范围)

      console.log(Number.MAX_VALUE * 100); //Infinity(无穷大)

      console.log(Number.MIN_VALUE);

      2.NaN

      3.js数字类型存在小数运算的精度问题

      console.log(0.1 + 0.2 == 0.3); //false

      解决方法1:数字转换成整数后做运算

      console.log((0.1 * 10 + 0.2 * 10) / 10 == 0.3); //true

      解决方法2:保留小数位 返回值为字符串

      console.log((0.1 + 0.2).toFixed(1)); //0.3(字符串)

      解决方法3:只要整数(通过round floor ceil等方法)

数字的方法和函数

 垃圾回收机制:通过一些回收算法,找出不再使用引用的变量或属性,由JS引擎按照固定时间间隔周期性的释放其所占的内存空间 

      isFinite 判断数字是不是有穷的

      console.log(isFinite(100)); //true

      console.log(isFinite(100 / 0)); //false

      NaN(不与任何值相等 包括本身)

      console.log(NaN == NaN); //false自己不等于自己

      var str = "1e";

      console.log(isNaN(str)); //判断是不是NaN

      Math 相关的方法 

     console.log(Math.PI); //圆周率 有限小数 不等于π

      console.log(Math.PI / 180); //弧度1度

      console.log(Math.ceil(9.11)); //10 向上取整

      console.log(Math.floor(9.11)); //9 向下取整

      console.log(Math.round(9.11)); //9 四舍五入

      console.log(parseFloat("9.11px111")); //9.11 取到第一个不是数的地方 前面输出数字 可以有两个参数 第二个参数是数字的表示进制 默认为十进制

      console.log(parseInt("9.11px")); //9 和上面一样 只是这个会取整

      var a = 8.33;

      console.log(a.toFixed(3)); //8.330 取3位小数 注意:输出结果变为了字符串

      console.log(Math.sin(30 * (Math.PI / 180))); //30度的sin值

      console.log(Math.max(1, 88, 66, 33)); //88 求一组数中的最大值

      console.log(Math.min(1, 88, 66, 33)); //1 求一组数中的最小值

      console.log(Math.pow(8, 3)); //512 8的3次方



      //random;

      console.log(Math.random()); //[0,1)之间的随机数 其他范围自己计算

      //求80--200之间的随机数

      console.log(Math.random() * 120 + 80);

数字进制

所有进制操作时都会被转为十进制

     十进制        二进制0b 0B        八进制 0o 0O        十六进制0x 0X

数字转换

 Number();

   1.字符串 会先调用trim()方法 去掉头尾空格

      console.log(Number("")); //0

      console.log(Number("    ")); //0 去掉空格后==("")

      console.log(Number("   1.23  ")); //1.23 去掉空格

      console.log(Number("  1.  23  ")); //NaN 去掉空格后还有非数字

   2.Boolean true==1 false==0

   3.null

      console.log(Number(null)); //0

   4.undefined

      console.log(Number(undefined)); //NaN

      注意:NaN参与任何运算结果都为NaN NaN与任何值做比较都为false

   5.应用类型 先调用valueof()方法(返回对象的初始值) 如果转不了数字型 再调用toString()

      console.log([1] + 100); //1100

      console.log({} + 100); //[object Object]100

      function fn() {}

      console.log(fn + 100); //function fn() {}100

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

思考猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值