[英]Demystify parentheses around literal
鑒於:
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));
最后一行(3).add(4)
如果更改為3.add(4)
則拋出異常; 否則,返回7。
演示: http : //jsfiddle.net/smacky311/m3NwK/2/
為什么會發生這種情況? 我讀到JSON周圍的括號可用於將JSON轉換為對象文字。 但是,在描述過程的方式中,表達式被解釋為對象文字,因為初始{
在這種情況下不適用。
解釋器在什么條件下確定文字是表達式? 我們什么時候添加括號?
3.
被解析為十進制數(如3.0
)。
要使用.
要訪問成員,您需要阻止它作為數字文字的一部分進行解析。
在之前添加空格.
或者一秒鍾.
,也會有所幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.