JavaScript 数组推送键值

标签 javascript arrays push

好吧,我在这里有点错,我已经浪费了一个小时,所以希望你们中的一个人可以帮助我。

var a = ['left','top'],
    x = [];

for(i=0;i<a.length;i++) {
    x.push({
        a[i] : 0
    });
}

如何将值推送到 var a 数组内的每个键?

您可以看到我失败的尝试,但希望这能让您深入了解我想要实现的目标。

最佳答案

您必须使用括号表示法:

var obj = {};
obj[a[i]] = 0;
x.push(obj);

结果将是:

x = [{left: 0}, {top: 0}];

也许您只需要一个具有两个属性的对象,而不是一组对象:

var x = {};

x[a[i]] = 0;

这将导致x = {left: 0, top: 0}

关于JavaScript 数组推送键值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7813374/

相关文章:

javascript - 在放置事件(FF,Chrome)的输入字段中获取插入符号位置(字符索引)

arrays - 如何使用循环在不使用 .reversed() 的情况下使用与语言相同的项目填充新数组?

javascript - Node js - Push() 函数无法与引用和 mongodb 一起正常工作

java - 如何实现XMPP发送推送通知

javascript - jQuery data() 可能会更改不在选择器中的元素?

javascript - 为什么我在向 Instagram 发送帖子请求时收到错误 403?

javascript - 有条件地在新选项卡中打开网址

javascript - Node js可以在for循环期间通过外部函数修改数组吗?

java - 将字符串与数组列表进行比较,看看该字符串是否包含列表中的任何内容

git unpack 推送到 gerrit 时出错