【发布时间】:2013-03-10 15:27:04
【问题描述】:
美好的一天!
我偶然发现了一些我在 JavaScript 领域从未见过的东西,但我想这对于更了解该语言的人来说很容易解释。下面我有以下功能:(取自书中的代码:“JavaScript Ninja 的秘密”)
function log() {
try {
console.log.apply(console, arguments);
}
catch(e) {
try {
opera.postError.apply(opera, arguments);
}
catch(e) {
alert(Array.prototype.join.call(arguments, " "));
}
}
}
如您所见,该函数是用一个空参数列表定义的,但是当我在本书后面看到他们实际上使用这样的函数时,我完全感到困惑......
var x = 213;
log(x); //Hmmm, I thought this function had an empty parameter list.
有人可以向我解释一下,为什么允许/可能调用该函数?支持此功能的 JS 中涉及哪些概念?提前谢谢,我很困惑。
最好的问候,
【问题讨论】:
-
是的,可能是无意的重复。但我从来没有想到我可以用这个标题搜索一个类似的问题。对不起。
-
通常情况下,外部搜索引擎比 SO 的内部搜索提供更好的结果 - 我通过 Google 和右侧的“链接”列表找到了这些问题。
标签: javascript