javascript使用中为什么10..toString()正常而10.toString()出错呢
2013-01-11 00:00
393 查看
这个问题是在著名的问答网站――stackoverflow上看到的。
之前也看到过JavaScript的这个问题,但是没有深入了解,今天在StackOverflow上看到了答案,感觉不错,记下来分享给大家。
问题的描述是这样的:
为什么前者正常,而后者报错呢。
原因就是,在JavaScript中,数字后面的"."操作符是的意义是不确定。因为它既可能是一个浮点数的标志,又可能是取一个对象的属性的运算符。但是JavaScript的解释器把他当做了浮点数的标志,所以上面的代码和下面的是等价的
之前也看到过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:在JavaScript中,为什么10..toString()正常,而10.toString()出错呢?(转)
- 在JavaScript中,为什么10..toString()正常,而10.toString()出错呢?
- .net MVC 使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错,字符串的长度超过了为 maxJsonLength 属性设置的值
- .h文件扩展名变化后为什么还能正常使用?(疑问)
- JavaScript中toString()方法的使用详解
- 我们为什么要使用 href="javascript:void(0)"
- 在JavaScript中,为什么要尽可能使用局部变量?
- JavaScript中字符串的拼接出错,单引号双引号混合使用
- 为什么j2ee的web研发过程中,有些jsp、html页面中,没有引入某个js(如test.js),却使用了test.js的某个函数,并且系统能够正常运行??
- .h文件扩展名变化后为什么还能正常使用?(疑问)
- 为什么很多国内公司不使用 jQuery 等开源 JS 框架(库),而选择自己开发 JavaScript 框架?
- 为什么我的MyEcilpse使用Struts2配置文件中的constant标签总是出错
- JavaScript eval() 为什么使用eval()是一个坏主意 什么时候可以使用eval()
- 翻译连载 |《你不知道的JS》姊妹篇 |《JavaScript 轻量级函数式编程》- 第 1 章:为什么使用函数式编程?
- sharepoint 页面使用javascript出错解决办法
- 使用JSON JavaScriptSerializer 进行序列化或反序列化时出错。字符串的长度超过了为 maxJsonLength属性
- 为什么要使用href="javascript:void(0);"
- php ueditor 后台配置项返回格式出错,上传功能将不能正常使用!
- JavaScript 为什么不要使用 eval