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

在Javascript中,为什么字符和数字类型没有属性/方法?

在Javascript中,为什么字符和数字类型没有属性/方法?

尚方宝剑之说 2019-04-08 11:18:13
Douglas说过,在Javascript中除了number,string,booleans和underfined&&null,其他的都是对象。但是number,string也有一条“隐秘链接”(proto)指向Object,这样我们理应可以在这个类型上调用JS内置方法:2.toString();//SyntaxErrorvarnum=2;console.log(num.toString());//String这是JS解释器原理方面的问题吗?感谢任何有价值的回答!
查看完整描述

2 回答

?
慕神8447489

TA贡献1780条经验 获得超1个赞

.可以是对象属性操作符,也可以是小数点。
解释器没有足够聪明的区分二者。
以2.toString()为例,当解析到2.时解析器直接认为这是浮点数,紧接着.t导致浮点数语法错误,你可以hacking过去。
2..toString();//小数点后面为空
2.0.toString();//小数点后为零
(2).toString();//限制范围,这不是小数
                            
查看完整回答
反对 回复 2019-04-08
?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

2.toString(),JS解析器会认为这个点是小数点,你可以这么写2..toString()或者(2).toString()
                            
查看完整回答
反对 回复 2019-04-08
  • 2 回答
  • 0 关注
  • 440 浏览
慕课专栏
更多

添加回答

举报

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