あなたが望むのは、ベクトルの囚人を連結することですか?
試す:
function toObject(arr) {
var rv = {}, k;
for (var i = 0; i < arr.length; ++i) {
for(k in arr[i]){
rv[k] = arr[i][k];
}
}
return rv;
}
これがあなたが探しているものではない場合は、これを試してください:
[修正済み(user @ user1689607の助けを借りて)]
[編集]:
Object.keys
古いブラウザでは動作しません。[修理済み]
function toObject(arr,_sort) {
//param1 = Object, param2 = (true:sort, false:default)
var rv = {}, k, firstV = null, keys, obj, tmp, j,
ObjK = Object.keys ? function(ke){
return Object.keys(ke);
} : function(ke){
var r = [];
for(var o in ke){
r[r.length] = o;
}
return r;
};
for (var i = 0; i < arr.length; ++i) {
obj = arr[i];
tmp = [];
keys = _sort===true ? ObjK(obj).sort() : ObjK(obj);
tmp = [obj[keys[0]]];
for (j = 0; j < keys.length; ++j) {
tmp[tmp.length] = obj[keys[j]];
}
rv[obj[keys[0]]] = tmp;
firstV = null;
}
return rv;
}
//sort
console.log(
toObject([{"a":"value1", "b":"value2", "c":"value3"}, {"d":"value4","e":"value5","f":"value6"}]),
true);
//default
console.log(
toObject([{"a":"value1", "b":"value2", "c":"value3"}, {"d":"value4","e":"value5","f":"value6"}])
);