Javascript 如何循环对象并从对象调用函数
我有一个布尔值的对象,一旦该值为真,我想测试我的对象中是否有与函数相同的值,如果有,那么我想调用该函数。我可以通过使用javascript来实现这一点 但是我正在寻找一些使用下划线的好方法。。有可能吗 以下是我的尝试:Javascript 如何循环对象并从对象调用函数,javascript,underscore.js,Javascript,Underscore.js,我有一个布尔值的对象,一旦该值为真,我想测试我的对象中是否有与函数相同的值,如果有,那么我想调用该函数。我可以通过使用javascript来实现这一点 但是我正在寻找一些使用下划线的好方法。。有可能吗 以下是我的尝试: var requiredViews : { "breadCrumbView": false, "headerView": false, "footerView": false } var that = this; _.each(requiredViews , func
var requiredViews : {
"breadCrumbView": false,
"headerView": false,
"footerView": false
}
var that = this;
_.each(requiredViews , function(val,key){
if(val && _.contaions(_.functions(that, key))){
that[key]();
}
})
除了从对象中单独选取真值键并调用它,还有什么快捷方式吗
有人建议我吗?该方法只接受一个参数。看起来你在找这样的东西:
_.each(requiredViews , function(val,key){
if(val && _.contains(_.functions(that), key)) {
that[key]();
}
})
var funcs = _.functions(that);
_.each(requiredViews , function(val,key){
if(val && _.contains(funcs, key)) {
that[key]();
}
})
此外,在每次迭代中调用\函数
似乎是一种浪费,您可能希望这样缓存它:
_.each(requiredViews , function(val,key){
if(val && _.contains(_.functions(that), key)) {
that[key]();
}
})
var funcs = _.functions(that);
_.each(requiredViews , function(val,key){
if(val && _.contains(funcs, key)) {
that[key]();
}
})
或者可以使用: