这是我的对象文字:
var obj = {key1: value1, key2: value2};
如何将值为3的字段key3添加到对象中?
这是我的对象文字:
var obj = {key1: value1, key2: value2};
如何将值为3的字段key3添加到对象中?
当前回答
我们可以通过多种方式向JavaScript对象添加键/值对。。。
案例1:展开对象使用此选项,我们可以同时向对象添加多个key:value。
常量矩形={width:4,height:6};常量立方体={…矩形,长度:7};const cube2={…矩形,长度:7,笔划:2};console.log(“立方体2:”,立方体2);console.log(“Cube:”,立方体);console.log(“矩形:”,矩形);
案例2:使用点符号
var矩形={width:4,height:6};直角长度=7;console.log(矩形);
案例3:使用[平方]符号
var矩形={width:4,height:6};矩形[“长度”]=7;console.log(矩形);
其他回答
arr.key3 = value3;
因为你的arr不是一个数组。。。这是一个原型对象。真正的数组应该是:
var arr = [{key1: value1}, {key2: value2}];
但这仍然不正确。实际上应该是:
var arr = [{key: key1, value: value1}, {key: key2, value: value2}];
如果在一个Object中有多个匿名Object文本,并希望添加另一个包含键/值对的Object,请执行以下操作:
Firebug对象:
console.log(Comicbook);
返回:
[对象{name=“Spiderman”,值=“11”},对象{name=“Marsiplami”,value=“18”},对象{name=“Garfield”,value=“2”}]
代码:
if (typeof Comicbook[3]=='undefined') {
private_formArray[3] = new Object();
private_formArray[3]["name"] = "Peanuts";
private_formArray[3]["value"] = "12";
}
将对象{name=“Peanuts”,value=“12”}添加到Comicbook对象
因为这是过去的问题,而现在的问题。会建议另外一个解决方案:只需将键和值传递给函数,您将获得一个map对象。
var map = {};
function addValueToMap(key, value) {
map[key] = map[key] || [];
map[key].push(value);
}
示例显示的是对象,而不是数组。在这种情况下,将字段添加到Object的首选方法是只分配给它,如下所示:
arr.key3 = value3;
我们也可以这样做。
var myMap = new Map();
myMap.set(0, 'my value1');
myMap.set(1, 'my value2');
for (var [key, value] of myMap) {
console.log(key + ' = ' + value);
}