可能是重复问题:
JavaScript: var functionName = function() {} vs function functionName() {}
JavaScript 中函数表达式与声明的区别是什么?
var abc = function def() {
console.log("Wait! What??");
}
我知道这不是一种JavaScript的方式,但只是想了解几件事情:
abc
会发生什么?为什么它能被调用而def
不能,为什么?- 这是一个函数声明还是表达式?
def
是undefined
- 为什么?如果应该是这样的,那么是否存在内存泄漏?- 为什么
abc.prototype
是函数def
?
def
可以引用自身。但要注意浏览器的怪异行为(IE)。 - Yoshi