为了账号安全,请及时绑定邮箱和手机立即绑定

js中Number对象内置方法的一些疑惑。

js中Number对象内置方法的一些疑惑。

鸿蒙传说 2018-12-13 18:15:42
大家都知道,JS里的对象都有内置了很多对象方法比如:var arr = [1, 2, 3, 4, 5]; arr.join(); //输出"12345"[1, 2, 3, 4, 5].join(''); //同样可以正确输出 "12345"    var str = 'helloWorld'; str.substr(5, 5);//输出 "World"'helloWorld'.substr(5,5);//也同样可以输出"World"等等...数组和字符串的内置对象方法都是可以通过字面量对象直接调用的但是到了Number这里,好像就不太行了比如var num = 10;num.toString(2);//输出"1010"10.toString(2);//报错Uncaught SyntaxError: Invalid or unexpected token但是加一个小数点,就可以了10.1.toString(2);//"1010"Number里面所有的内置方法都是这种情况,好像必须要加小数点,JS引擎才能正确识别这是一个数字,不知道这是为什么。谢谢大家~~
查看完整描述

1 回答

?
江户川乱折腾

TA贡献1851条经验 获得超5个赞

因为 var a = 10. 是合法的, 所有必须再加一个 . ,10..toString(2) === '1010'

在JavaScript中,数字后面的"."操作符是的意义是不确定。因为它既可能是一个浮点数的标志,又可能是取一个对象的属性的运算符。但是JavaScript的解释器把它当做了浮点数的标志,


查看完整回答
反对 回复 2019-01-19
  • 1 回答
  • 0 关注
  • 482 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信