深入学习JavaScript:在JavaScript中,为什么10..toString()正常,而10.toString()出错呢?(转)
2012-11-03 00:55
411 查看
摘自:/article/5547425.html
这个问题是在著名的问答网站——stackoverflow上看到的。
之前也看到过JavaScript的这个问题,但是没有深入了解,今天在StackOverflow上看到了答案,感觉不错,记下来分享给大家。
问题的描述是这样的:
为什么前者正常,而后者报错呢。
原因就是,在JavaScript中,数字后面的"."操作符是的意义是不确定。因为它既可能是一个浮点数的标志,又可能是取一个对象的属性的运算符。但是JavaScript的解释器把他当做了浮点数的标志,所以上面的代码和下面的是等价的
(完)^_^
这个问题是在著名的问答网站——stackoverflow上看到的。
之前也看到过JavaScript的这个问题,但是没有深入了解,今天在StackOverflow上看到了答案,感觉不错,记下来分享给大家。
问题的描述是这样的:
console.log(10..toString());//10 console.log(10.toString());//SyntaxError: Unexpected token ILLEGAL
为什么前者正常,而后者报错呢。
原因就是,在JavaScript中,数字后面的"."操作符是的意义是不确定。因为它既可能是一个浮点数的标志,又可能是取一个对象的属性的运算符。但是JavaScript的解释器把他当做了浮点数的标志,所以上面的代码和下面的是等价的
console.log((10.).toString());//正常 console.log((10.)toString());//这样的话,当然就报错了
(完)^_^
相关文章推荐
- javascript使用中为什么10..toString()正常而10.toString()出错呢
- 在JavaScript中,为什么10..toString()正常,而10.toString()出错呢?
- javascript使用中为什么10..toString()正常而10.toString()出错呢
- 为什么 ++[[]][+[]]+[+[]] = 10 ?(javascript)
- 深入学习分区表及分区索引(10)--交换分区
- 深入学习JavaScript中的原型prototype
- 深入理解JavaScript系列(10):JavaScript核心(晋级高手必读篇)
- 深入学习javascript--Module模式
- 深入学习JavaScript: apply 方法——转
- 深入理解JavaScript系列(10):JavaScript核心(晋级高手必读篇)
- 深入理解JavaScript 中为什么没有重载?
- 深入JavaScript学习底层内容
- 为什么学习JavaScript?
- 现在,为什么连一个 JavaScript 的厌恶者都认为:每个开发人员都应该学习 JavaScript
- 为什么 ++[[]][+[]]+[+[]] = 10 ?(javascript)
- 深入理解javascript的作用域--函数声明为什么会前置
- [js点滴(转)]深入学习JavaScript: apply 方法 详解
- JavaScript 对象深入学习总结
- javascript学习记录(三)-this对象的深入理解
- javascript学习笔记10-13章