Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从对象创建数组?_Javascript - Fatal编程技术网

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]}`
的结果是一个字符串。你想让你的数组元素是字符串吗?非常感谢,伙计!