如果我们创建一个像这样的对象
const userDetails={firstname:'karan',lastname:'khimani'}
然后是预期的输出
[["firstname", "karan"], ["lastname", "khimani"]]
我如何转换它?
答案 0 :(得分:2)
使用Object.entries
:
const userDetails = { firstname: "karan", lastname: "khimani" };
const arr = Object.entries(userDetails);
console.log(arr);
我相信这是ES7的功能-因此,如果您需要支持较旧的浏览器,请将map
与Object.keys
结合使用:
var userDetails = { firstname: "karan", lastname: "khimani" };
var arr = Object.keys(userDetails).map(function(key) {
return [key, userDetails[key]]
});
console.log(arr);
答案 1 :(得分:1)
所以您要做的是创建一个数组,其中包含键和值作为数组。
您应该看看Object.keys
和Object.entries
。
下面是解决方法,但请先查看我提供给您的功能文档,然后尝试自己找到它。
const userDetails = {
firstname: 'karan',
lastname: 'khimani'
};
const transformed = Object.keys(userDetails).map(x => [x, userDetails[x]]);
console.log(transformed);
为什么不总是使用Object.entries
?因为并非所有浏览器都支持它。
const userDetails = {
firstname: 'karan',
lastname: 'khimani'
};
const transformed = Object.entries(userDetails);
console.log(transformed);