Kir*_*oss 5 arrays jquery json
我已经将嵌套循环中的不同值推入对象中,结果如下:
obj = ["blue", 1, "red", 4, "yellow", 2, "green", 7];
Run Code Online (Sandbox Code Playgroud)
但我希望它像这样返回:
obj = [{"blue": 1}, {"red": 4}, {"yellow": 2}, {"green": 7}];
Run Code Online (Sandbox Code Playgroud)
我必须手动构建该语法还是有更快的方法?
使用简单的 for 循环。
var obj = ["blue", 1, "red", 4, "yellow", 2, "green", 7];
var res = [];
for (var i = 0; i < obj.length; i += 2) {
var o = {};
o[obj[i]] = obj[i + 1];
res.push(o);
}
console.log(res);Run Code Online (Sandbox Code Playgroud)
ES6解决方案使用Array.from()方法。
let obj = ["blue", 1, "red", 4, "yellow", 2, "green", 7];
console.log(Array.from({ length: obj.length / 2 }, (_, i) => ({ [obj[2 * i]]: obj[2 * i + 1] })));Run Code Online (Sandbox Code Playgroud)