gpt4 book ai didi

javascript - 以编程方式调用对象中的所有函数? (JavaScript)

转载 作者:行者123 更新时间:2023-11-30 08:21:55 25 4
gpt4 key购买 nike

如标题所述,有没有办法以编程方式调用对象中的所有函数?不必按特定顺序调用它们,它们在任何状态下都不依赖于彼此。我最初尝试的最合乎逻辑的(至少对我而言)是

var object = {
eventOne(){
console.log("eventOne")
},
eventTwo(){
console.log("eventTwo")
},
.......more events
}
//and then this for calling them
for(event in object){
event();
}

但这只是以 event() 结束,这不是函数错误。截至目前,对象中的事件还不足以让我太烦恼,而不仅仅是手动调用它们,但很快就会有大约 20 个左右,它们需要在多个位置注册,我也很好奇知道这是否可能:)

最佳答案

for..in 循环遍历属性名称,而不是值。如果某个对象的某些值是函数,而您想要调用这些函数,则改为遍历,并确保先进行typeof检查以确保您不要调用非函数:

var object = {
eventOne(){
console.log("eventOne")
},
eventTwo(){
console.log("eventTwo")
},
};
Object.values(object).forEach((val) => {
if (typeof val === 'function') val();
});

关于javascript - 以编程方式调用对象中的所有函数? (JavaScript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52157007/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com