如果函数不在“父”函数中执行或使用eval(),如何将函数作为参数传递?(因为我已经读到它是不安全的。)
我有这个:
添加联系人(entityId,refreshContactList());
它可以工作,但问题是refreshContactList在调用函数时触发,而不是在函数中使用时触发
我可以使用eval()绕过它,但根据我所读的内容,这不是最佳实践。如何在JavaScript中将函数作为参数传递
您只需删除括号:
添加联系人(entityId,刷新联系人列表);
然后,它传递函数而不首先执行它
以下是一个例子:
函数addContact(id,刷新回调){
刷新回调();
//如果需要,还可以传递参数
//刷新回调(id);
}
函数refreshContactList(){
警报(“你好世界”);
}
添加联系人(1,刷新联系人列表);