【发布时间】:2016-05-12 21:47:09
【问题描述】:
我有这样的情况:
console.log(someVar) // <- works, the variable is defined
var somefunction = function () {
console.log(someVar);
}
somefunction(); // <- someVar is undefined on the console
我无法演示一个简单的模型来说明这一点,因为我什至不知道这怎么可能。如果someVar是在定义someFunction的上下文中定义的,那么someVar不也在someFunction的范围内吗?
在某些情况下它应该像这样工作吗?如果是这样,我可能不小心撞到了一个。
【问题讨论】:
-
你不应该返回任何东西 - 你没有返回方法。你只是在记录一个未定义的变量。
-
“我无法展示一个简单的模型来展示这一点,因为我什至不知道这怎么可能。” — 您显然有一些代码可以证明这一点。 Reduce it 直到它构成一个合理的测试用例。
-
好吧,我用错了词。这与问题几乎没有关系。
-
@AdamHolder — 由于该函数实际上确实 return undefined,因此非常相关。
-
@AdamHolder — 再次重申:如果您提供适当的测试用例,那么人们可以提供帮助。如果您向我们展示了有效的代码但声称它不起作用,那么我们就无能为力了。
标签: javascript scope