gpt4 book ai didi

javascript - 遍历数组并在 javascript 中将所有变量设置为 false 或 true

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:47:23 27 4
gpt4 key购买 nike

我需要遍历数组并将所有变量设置为 false 或 true。我尝试了很多选项,但都没有用,这显然是我缺乏 javascript 语法知识。请看看这个:

var closeAllCells = [IncomeOpen = "false",
RehabOpen = "false",
AttendantCareOpen = "false",
HomeMaintenanceOpen = "false",
DependantCareOpen = "false",
IndexationOpen = "false",
DeathFuneralOpen = "false",
ComprehensiveOpen = "false",
CollisionOpen = "false",
LiabilityOpen = "false",
DCPDOpen = "false"];

所以我的想法是我可以按如下方式循环

for (var i=0;i<closeAllCells.length;i++)
{
closeAllCells[i] = true; // or false if I wished
}

最佳答案

在您的示例中,您正在创建一个数组,其中包含分配给一堆全局变量的值,该数组如下所示:

[错误,错误,错误,错误,错误,错误,...]

您希望使用 object literal将您的值存储为对象的属性,例如:

var data = {
IncomeOpen : false,
RehabOpen : false,
AttendantCareOpen : false,
HomeMaintenanceOpen : false,
DependantCareOpen : false,
IndexationOpen : false,
DeathFuneralOpen : false,
ComprehensiveOpen : false,
CollisionOpen : false,
LiabilityOpen : false,
DCPDOpen : false
};

for (var prop in data) {
if (data.hasOwnProperty(prop)) {
data[prop] = true;
}
}

如您所见,我们正在使用 for...in在这里循环,这条语句的目的是枚举对象属性。

您也可以像这样访问各个属性:

alert(data.IncomeOpen); // true, or
alert(data["RehabOpen"]); // true

你可能想知道为什么我们需要调用hasOwnProperty方法,那是为了确保只枚举自己的属性(物理上存在于对象上的属性,我们定义的属性),而不是任何继承的属性(property)。

另见:

关于javascript - 遍历数组并在 javascript 中将所有变量设置为 false 或 true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3020679/

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