gpt4 book ai didi

javascript增强for循环内的if else

转载 作者:行者123 更新时间:2023-11-28 19:14:11 25 4
gpt4 key购买 nike

我有一个数组,它基本上包含 3 个值:

  • 列表名称
  • 列表虚拟
  • 引导加载程序名称

此值用于禁用 html 中的元素(如果它们存在于数组中)。我创建的一段代码可以工作,但是看看它,一定有更好的方法来编写它。

for (var i = 0; i < firmwareTypes.length; i++) {
if (firmwareTypes[i] == "listingname") {
parameterlistingname.required = false;
parameterlistingfile.required = false;
}
if (firmwareTypes[i] == "listingdummy") {
parameterlistingdummyname.required = false;
parameterlistingdummyfile.required = false;
}
if (firmwareTypes[i] == "bootloadername") {
bootloadername.required = false;
bootloaderfile.required = false;
}
}

JavaScript 中有没有一种方法可以比较 id 元素的某些字符串长度,这样我就可以只使用一个 if 条件。像这样的东西:

for (var i = 0; i < firmwareTypes.length; i++) {
if (firmwareTypes[i].contains(???) {
bootloader*.required = false;
}
}

或者只是让代码更简洁?

最佳答案

也许这可能有效:

var types = {
'listingname': [parameterlistingname, parameterlistingfile],
'listingdummy': [parameterlistingdummyname, parameterlistingdummyfile],
'bootloadername': [bootloadername, bootloaderfile]
};


firmwareTypes.forEach(function (firmware) {
if (firmware in types) {
types[firmware].forEach(function (item) {
item.required = false;
});
}
});

关于javascript增强for循环内的if else,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30204780/

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