Javascript 回调函数错误

标签 javascript callback

我正在尝试更加熟悉 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/

相关文章:

c++ QThread和boost回调函数

node.js - 如何防止每条新推文触发 Twitter 流中的回调?

javascript - 计算价格 JavaScript

javascript - 确保在条件 promise 之后执行 promise

javascript - Marionette Backbone : Childviews with multiple possible view states

javascript - Angularjs:如何应用 NOT 过滤器?

C# DataGridView (CheckBox) 单元格点击多次回调

javascript - 通过//请求时无法检索js文件?

java - 了解 Java 中的回调

javascript - Socket.io:接收事件触发多次