有人可以向我解释为什么第一个函数中的第二个函数是未定义的吗?
var a = 1
function abc () {
alert(a);
function xyz () {
alert(a);
}
}
答案 0 :(得分:1)
xyz
是一个内部函数,它对abc
函数是私有的。
除非您将其公开,否则无法致电xyz
答案 1 :(得分:1)
这是由于您尝试执行xyz()
(全局)的范围。 xyz()
只能在abc()
内部运行 - 在本地范围内定义。