Javascript 如何从对象创建数组?
我有这样一个对象:Javascript 如何从对象创建数组?,javascript,Javascript,我有这样一个对象: let dataObject = {firstName: "Mike", employeeId: "1020"} let newArray = [ {operator:"sum", value: "Mike", property: "firstName", type: "string"}, {operator:"sum", value: "1020", property: "employeeId", type:"string"} ]; 我想用每个属性创建一个数组,如下
let dataObject = {firstName: "Mike", employeeId: "1020"}
let newArray = [
{operator:"sum", value: "Mike", property: "firstName", type: "string"},
{operator:"sum", value: "1020", property: "employeeId", type:"string"}
];
我想用每个属性创建一个数组,如下所示:
let dataObject = {firstName: "Mike", employeeId: "1020"}
let newArray = [
{operator:"sum", value: "Mike", property: "firstName", type: "string"},
{operator:"sum", value: "1020", property: "employeeId", type:"string"}
];
到目前为止,我得到了这个:
let dataObject={firstName:“Mike”,employeeId:“1020”}
让newArray=Object.keys(dataObject.map)(key)=>
`{${key}}:${dataObject[key]}`
);
log(newArray)
.map
映射数据对象
的条目
,因此您可以基于原始对象中每个键值对的键和值创建另一个数组:
constdataobject={firstName:“Mike”,employeeId:“1020”};
const newArray=Object.entries(dataObject.map)([property,value])=>({
运算符:'sum',
价值
财产,,
类型:值的类型
}));
log(newArray)代码>您需要将数组映射到新对象,而不是映射到表示新对象的字符串
newArray = Object.keys(dataObject).map(key => {
return {operator:"sum", value: dataObject[key], property: key, type: typeof dataObject[key]};
});
let dataObject={firstName:“Mike”,employeeId:“1020”};
var newArr=对象
.keys(数据对象)
.map((键)=>{
返回{operate:'sum',value:dataObject[key],property:key,type:typeof dataObject[key]}
});
控制台日志(newArr)
运算符:“sum”
属性的含义是什么?(是否会出现newArray
项不包含运算符:“sum”
?)那么,您需要在map
回调中创建对象.map(key=>({operator:'sum',property:key,…}))
@CertainPerformance它没有任何意义,但我需要它在那里,这样我可以在将数据发送到后端时使用它Object.key(dataObject.key(dataObject).map(key=>({operator:'sum',value:dataObject[key],property:key,type:'string}))
但是。。。要求似乎有点模糊。如果要创建对象数组,为什么要创建字符串?为什么要忽略您说过需要添加的内容呢?表达式`{${key}}:${dataObject[key]}`
的结果是一个字符串。你想让你的数组元素是字符串吗?非常感谢,伙计!