发生在(1).toString()和1.toString()中的Javascript

前端之家收集整理的这篇文章主要介绍了发生在(1).toString()和1.toString()中的Javascript前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > Calling member function of number literal3
在JavaScript控制台中,如果输入以下内容
1.toString();  // Uncaught SyntaxError: Invalid or unexpected token
(1).toString(); // "1"

这两个语句在JS编译器里面发生了什么?

解决方法

()是分组运算符,它返回其中的表达式的值.在这种情况下,它是1,一个原始数字.所以它可以被Boxed到一个Number对象并调用它的方法toString.

但是对于1.toString(),JS引擎无法确定什么.平均值 – 点运算符(对于对象方法)或浮点数?

解决这个混乱,没有分组运算符,你有两种方法

> 1 .toString()//一个空格,类似于分组运算符> 1..toString()//两个点,其中第二个被视为点运算符

猜你在找的JavaScript相关文章