在javascript JSON中添加字符串作为键
我正在尝试根据用户输入更新JSON 我有一个现有的JSON数组:在javascript JSON中添加字符串作为键,javascript,json,string,loops,updates,Javascript,Json,String,Loops,Updates,我正在尝试根据用户输入更新JSON 我有一个现有的JSON数组: colorDataInitial = { "ML1TEST1" : "#120101", "ML1TEST2" : "#120101", "ML1TEST3" : "#120101", "ML1TEST4" : "#120101", "ML1TEST5" : "#120101", } 并希望根据用户输入将其中一种颜色更新为新颜色: var roomID = $('#room').val();
colorDataInitial = {
"ML1TEST1" : "#120101",
"ML1TEST2" : "#120101",
"ML1TEST3" : "#120101",
"ML1TEST4" : "#120101",
"ML1TEST5" : "#120101",
}
并希望根据用户输入将其中一种颜色更新为新颜色:
var roomID = $('#room').val();
但是,当我尝试循环使用此项时,点符号仅添加为一个新键:
var arrayLength = roomArray.length;
for (var i = 0; i < arrayLength; i++) {
if (roomArray[i] == roomID) {
var colorDataTest.roomID = "#FF1C1C"
} else {
var colorDataTest.roomID = ("ML1TEST" + i);
}
}
如何让它接受字符串作为用户输入
感谢您的帮助您可能需要使用:
colorDataTest[roomID]
而不是:
colorDataTest.roomID
.roomID
方法在colorDataTest
上查找名为roomID
的属性方括号从
colorDataTest
中的roomID
值中查找名称为的属性
例如:
var myVar = 'aString';
var myObj = {
aString: 123,
myVar: 456
}
console.log(myObj[myVar]); // 123
console.log(myObj.myVar); // 456
var myVar = 'aString';
var myObj = {
aString: 123,
myVar: 456
}
console.log(myObj[myVar]); // 123
console.log(myObj.myVar); // 456