Javascript 如何将键值对象转换为对象数组

Javascript 如何将键值对象转换为对象数组,javascript,arrays,typescript,javascript-objects,Javascript,Arrays,Typescript,Javascript Objects,我想将键值对象转换为javascript中的对象数组 var obj={"name1":"value1","name2":"value2",...}; 如何将其转换为 arr=[{"name":"name1","value":"value1"},{"name":"name2","value":"value2"},...]; 简短答覆(ES6): 另一个答案(ES5): 尝试使用array#map和array#push var obj={“name1”:“value1”,“name2”:“v

我想将键值对象转换为javascript中的对象数组

var obj={"name1":"value1","name2":"value2",...};
如何将其转换为

arr=[{"name":"name1","value":"value1"},{"name":"name2","value":"value2"},...];
简短答覆(ES6):

另一个答案(ES5):

尝试使用
array#map
array#push

var obj={“name1”:“value1”,“name2”:“value2”};
var-res=[];
Object.keys(obj.map)(a=>res.push({name:a,value:obj[a]}))

console.log(res)
不要使用,因为它不是ES6,但仍然只是草稿。是ECMAScript 2018(正如str所说,仍然是草案)。我猜你说的“ES6”是指ECMAScript 2015 aka。谢谢你的澄清。我不会编辑帖子来保持你的评论有效。
const arr = Object.entries(obj).map(([name, value]) => {
  return {
    name,
    value
  }
});
var arr = Object.keys(obj).map(function(key) {
  return {
    name: key,
    value: obj[key]
  }
});