我想制作动态过滤方法,但不知道如何动态包含条件。
示例
var do_test_1 = true,
do_test_2 = false,
do_test_3 = true;
现在有三个测试:
if (foo == bar) // test 1
if (john == doe) // test 2
if (jane == doe) // test 3
现在我想基于do_test
vars构建动态if子句。
真实用例
我有一个任务列表,想要过滤它们:
我使用filter
方法,但我只使用OR逻辑(显示分配给我的任务或具有高优先级):
var $show = $tasks.filter(function(index, task) {
var $task = $(task);
return ((task.data('assigned') && filters['mytasks']) || (task.data('priority') == 3 && filters['priority']))
});
答案 0 :(得分:2)
使用eval()
功能
for(var i=0;i<3;i++){
var f=i+1;
eval("if(f==i+1){alert(i);}");
}
演示:http://jsfiddle.net/ke42b/2/
这只是关于如何创建动态if条件的提示。现在您知道如何创建动态if条件。
根据您的需求编码!