Javascript 我可以搜索函数数组并运行搜索的函数吗?
我正在尝试编写一个应用程序,搜索函数数组并执行找到的函数Javascript 我可以搜索函数数组并运行搜索的函数吗?,javascript,arrays,function,object,Javascript,Arrays,Function,Object,我正在尝试编写一个应用程序,搜索函数数组并执行找到的函数 var search = 'test'; var valid_input_array = [ function test(){console.log('test');}, function abc(){console.log('abc');} ]; for (i = 0; i < valid_input_array.length; i++) { if (valid_input_array[i].name
var search = 'test';
var valid_input_array = [
function test(){console.log('test');},
function abc(){console.log('abc');}
];
for (i = 0; i < valid_input_array.length; i++) {
if (valid_input_array[i].name === search) {
valid_input_array.search;
}
}
var搜索='test';
变量有效\u输入\u数组=[
函数test(){console.log('test');},
函数abc(){console.log('abc');}
];
对于(i=0;i
它确实找到了函数,但没有运行它。您需要调用找到的函数
var搜索='test';
var valid_input_array=[function test(){console.log('test');},function abc(){console.log('abc');}];
对于(i=0;i }
您也可以使用数组#find()
var搜索='test';
变量有效\u输入\u数组=[
函数test(){console.log('test');},
函数abc(){console.log('abc');}
];
var funcWanted=valid\u input\u array.find(函数(fn){
返回fn.name==搜索
})
//只有当find没有返回false时才调用它
funcWanted&&funcWanted()