我如何编程许多不同的条件和操作
How do I program many different conditions and actions
我想循环遍历对象address
中的级别1属性,并在循环中使用if语句测试特定于该属性的各种条件和操作。因此,我添加了级别2的condition
和action
属性,试图降低if语句的复杂性。下面的代码代表了我正在尝试做但不起作用的事情。不知道如何做到这一点。
var address = {
first: {
value: "Joe",
condition: "address[key].value.length === 0",
action: "console.log(key + ' Not street1:' + address[key].value.length)"
},
last: {
value: "Dirt",
condition: "address[key].value.length === 0",
action: "console.log(key + ' Not street1:' + address[key].value.length)"
},
street1: {
value: "123 Blah Street",
condition: "key === 'street1' && address[key].value.length === 0",
action: "console.log(key + ' This is street1')"
},
};
for (var key in address) {
var condition = address[key].condition;
var action = address[key].action;
if (condition) {
return action;
}
}
您将希望在这些条件和操作中使用实际的JavaScript
first: {
value: "Joe",
condition: function () { return address[key].value.length === 0 },
action: function () { console.log(key + ' Not street1:' + address[key].value.length) }
}
除非你真的需要eval()
,否则我不推荐它。你的示例代码不需要它……但谁知道这里的实际应用程序是什么呢?如果你确实需要eval,你必须小心执行什么以及如何构建它。
您必须使用eval
:评估条件和操作
for (var key in address) {
var condition = address[key].condition;
var action = address[key].action;
if (eval(condition)) {
eval(action);
}
}
然而,我支持@Brad关于尽量避免eval
并尽可能使用实际代码的评论。
相关文章:
- 如何使jQuery插件函数可调用以供独立使用,而不在集合上操作
- Jquery菜单操作不稳定,定位不正确,存在一般错误
- 通过js在新选项卡中有条件地打开url
- 我已经创建了一个jquery转盘,并使用if条件来运行和停止转盘
- javascript对象操作:根据指定条件选择属性
- 我如何编程许多不同的条件和操作
- 单击Oracle APEX导航栏项目时的条件操作
- 如果条件,则在其他操作之后调用 Redux 操作
- Jquery - 如果条件为真,则遍历选择器并执行某些操作
- 如何在操作类中识别两个不同的 JSP 页面按钮?如何基于 JSP 页面视图按钮和查看全部按钮编写条件
- 如何根据 javascript 中的条件控制表单操作
- 我如何执行等待操作作为while条件或等效条件
- 如何创建一个javascript侦听器函数,该函数将在条件为true时执行操作
- 根据多种条件操作具有不同颜色的文本
- 在 javascript 中使用条件操作定义变量
- CRM 2013中功能区按钮操作的条件执行
- 提示条件操作
- 使用google脚本操作数据条件格式和数据验证
- 我想用javascript编写这样一个条件,如果用户通过googlechrome进入我的网站,发出警报或执行任何操作
- 由于. replacewith操作,for条件无法完成