我很难理解以下声明之间的区别是什么......
var User = function(name, email) {
this.name = name;
this.email = email;
};
和
function User(name, email) {
this.name = name;
this.email = email;
};
答案 0 :(得分:1)
我所知道的最基本的区别是var User = function(name, email)
是在运行时创建的,function User(name, email)
将在分析时创建。
添加示例
这可以在这里使用,因为name
在解析文件时可用
name();
function name () {
console.log('My Name')
}
但这会引发一个名为undefined is not a function
但问题是它在读取行var name = function()
之前不会被声明。
name()
var name = function(){
console.log('My Name');
}