Javascript 消除文字周围括号的神秘性

Javascript 消除文字周围括号的神秘性,javascript,Javascript,鉴于: 最后一行(3).add(4)在更改为3.add(4)时抛出异常;否则,返回7 演示: 究竟为什么会发生这种情况?我了解到,JSON周围的括号可用于将JSON转换为对象文本。但是,由于初始的{在本例中不适用,因此该过程的描述方式将表达式解释为对象文字 解释器在什么条件下确定文字是表达式?只要我们添加括号?3。被解析为十进制数(如3.0)。 要使用访问成员,需要防止将其作为数字文本的一部分进行解析 在之前添加一个空格,或者在之前添加第二个空格也会有所帮助。有趣的事实:3..add(4)有效:

鉴于:

最后一行
(3).add(4)
在更改为
3.add(4)
时抛出异常;否则,返回7

演示:

究竟为什么会发生这种情况?我了解到,JSON周围的括号可用于将JSON转换为对象文本。但是,由于初始的
{
在本例中不适用,因此该过程的描述方式将表达式解释为对象文字


解释器在什么条件下确定文字是表达式?只要我们添加括号?

3。
被解析为十进制数(如
3.0
)。
要使用
访问成员,需要防止将其作为数字文本的一部分进行解析

之前添加一个空格,或者在
之前添加第二个空格也会有所帮助。

有趣的事实:
3..add(4)
有效:-)
Number.prototype.add = methodize(add);

function methodize(func) {//a function that converts a binary function to a method
    return function (x) {        
            //console.log(x);            
            console.log(this);
            return func(x,this);            
        }
}

function add(x, y) {
    return x + y;
}

console.log((3).add(4));