为什么可以对整数变量调用toString(),而不能对文字数字调用
Why can you call toString() on an integer variable but not a literal number?
这是怎么回事:
var num = 1;
console.log(num.toString()); // "1"
但这不是吗?
console.log(1.toString()); // SyntaxError: Unexpected token ILLEGAL
因为语法要求数字后面的.
被解析为该数字的一部分,例如1.5
。如果您想将.
用作数字文字上的成员运算符,则需要消除其歧义:
1..toString(); // "1"
1.0.toString(); // "1"
(1).toString(); // "1"
在前两种情况下,第一个.
被解析为浮点。第二个只能作为成员运算符解析,因为数字文字只能包含一个浮点。
这通过规范中的NumericLiteral语法来显示。
相关文章:
- 如何使jQuery插件函数可调用以供独立使用,而不在集合上操作
- D3在一个调用中绘制不同的SVG形状,没有可见性
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- 为什么可以对整数变量调用toString(),而不能对文字数字调用
- 在javascript中对数字调用构造函数
- 对负指数调用的.toFixed()返回一个数字,而不是字符串
- 不能在 Javascript 中的数字常量上调用 toString()
- 无法对数字变量调用 toFixed
- 调用数字文字的成员函数
- Jquery ajax调用:can'不要用数字
- 试图从标记为数字的数组中调用一个值
- 如何将一个数字从另一个函数调用到一个函数中
- 如何获得所有可能的方法,可以调用一个变量在js(包括非对象变量,如数字)
- 在数字字面量上调用toFixed方法
- 我如何调用一个函数与数字9从这个数组
- 如何调用数组中的一段数字
- 每次调用函数时生成相同的数字
- 为什么这个函数调用返回一个字符串而不是一个数字
- 使用正则表达式匹配数字的JavaScript调用函数(int)会导致错误
- javascript在使用数字索引分配数组值时是否调用. tostring ?