0

私は次のことをしたい:

// an object
var object = {
    one: null,
    two: null,
    three: null
};

// an array
var array = ['this is one', 'this is two', 'this is three'];

私は今、それらを両方ともマージしたいので、取得します。

var merged = {
    one: 'this is one',
    two: 'this is two',
    three: 'this is three'
};

純粋なJavaScript(ECMA5)だけで3番目のライブラリを使用したくありません。

それで、トリックは何ですか?

よろしく、bodo

4

1 に答える 1

2

これを試して:

// an object 
var object = {
    one: null,
    two: null,
    three: null
};

// an array 
var array = ['this is one', 'this is two', 'this is three'];

function merge(arraysrc, array2dest) {

    var x, i = 0;

    var merged = [];

    for (x in array2dest) {
        var obj = {};
        obj[x] = arraysrc[i++];
        merged.push(obj);
    }
    return merged;
}

var a = merge(array, object);

alert(JSON.stringify(a));​

http://jsfiddle.net/6mQYN/

于 2012-09-14T14:00:06.977 に答える