我正在尝试更加熟悉 Javascript 中的回调函数。我创建了一个简单的应用程序来将新成员推送到开发团队阵列。我正在尝试使用 addDev 函数作为我的回调实践。我收到一个错误:Uncaught TypeError: addDev is not a function
。
var devTeam = [];
function devMember(fName, lName, addDev){
this.firstName = fName;
this.lastName = lName;
this.fullName = firstName + " " + lastName;
addDev(fullName);
}
function addDev(member){
devTeam.push(member);
console.log(devTeam);
}
devMember('Jay', 'Spears');
最佳答案
那是因为您从未将 addDev
传递给 devMember
。
尝试 devMember('Jay', 'Spears', addDev);
即使 addDev
已定义(提升),因为您正在调用 devMember
的第三个参数也是 addDev
,您正在覆盖它。然后当你调用 devMember('Jay', 'Spears')
时,你不会将任何东西作为第三个参数传递,所以它在 devMember
的执行上下文中是未定义的.
关于Javascript 回调函数错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32743894/