Javascript 循环遍历对象并将键和值推入数组

Javascript 循环遍历对象并将键和值推入数组,javascript,Javascript,我一直试图传入一个包含一些数据的对象,然后我想将该对象中的结果推送到一个数组中,但仍然保留键和值名称 传入的数据: App.config({ dependencies: : { 'html5shiv' : 'http://html5shiv.googlecode.com/svn/trunk/html5.js', 'respondjs' : 'http://respondjs.googlecode.com/svn/trunk/respond.js'

我一直试图传入一个包含一些数据的对象,然后我想将该对象中的结果推送到一个数组中,但仍然保留键和值名称

传入的数据:

App.config({
    dependencies: : {
        'html5shiv' : 'http://html5shiv.googlecode.com/svn/trunk/html5.js',
        'respondjs' : 'http://respondjs.googlecode.com/svn/trunk/respond.js'
    }
});
我的数组和逻辑(指明了我的位置!):

我希望“deps”的结局是:

[{
    'html5shiv': 'http://html5shiv.googlecode.com/svn/trunk/html5.js'
},{
    'respondjs': 'http://respondjs.googlecode.com/svn/trunk/respond.js'
}];
有人能建议实现这一目标的最佳方法吗?

试试这个

for (var key in dep) {
        if (dep.hasOwnProperty(key)) {
            deps.push( dep[key].html5shiv);
            deps.push( dep[key].respondjs);
        }
    }
更新:

for (var key in dep) {
     if (dep.hasOwnProperty(key)) {
          deps.push({key: dep[key]}); //Dynamic
      }
 }
试试这个

for (var key in dep) {
        if (dep.hasOwnProperty(key)) {
            deps.push( dep[key].html5shiv);
            deps.push( dep[key].respondjs);
        }
    }
更新:

for (var key in dep) {
     if (dep.hasOwnProperty(key)) {
          deps.push({key: dep[key]}); //Dynamic
      }
 }
试试这个:

deps.push(dep[key]);
试试这个:

deps.push(dep[key]);

这只需要按下键,我需要实际按下一个对象,我想你可以这样做。按下({key:obj})但它不工作。会给你这个,需要动态的,不是硬编码的,但它有帮助:)@Halcyon21
deps.push({key:dep[key]})
这就是你工作的地方。您可以共享它吗?当然:如果(dep.hasOwnProperty(key)){var newObj={};newObj[key]=dep[key];deps.push(newObj);}@Halcyon21,创建一个临时obj,然后将其推送到数组。很好。它类似于deps.push({key:dep[key]})?它只需要按键,我需要实际按一个对象,我想你可以这样做。push({key:obj})但它不起作用。它会给你这个,需要是动态的,不是硬编码的,但它有帮助:)@Halcyon21
deps.push({key:dep[key]})
你就是这样做的吗。您可以共享它吗?当然:如果(dep.hasOwnProperty(key)){var newObj={};newObj[key]=dep[key];deps.push(newObj);}@Halcyon21,创建一个临时obj,然后将其推送到数组。很好。它类似于
deps.push({key:dep[key]})