我正在尝试将新值推送到数组,并希望保留旧值,但旧值正在使用以下代码消失。
let abText = (text) => {
let query = [];
let a = text.map(
(script) => {
let value = createFromMethod(script);
query = {...query, value};
}
);
console.log(query);
return query;
};
createFromMethod
每次映射都会返回一个对象
迭代,我需要将所有这些对象作为对象数组返回。
我的代码有什么问题?
答案 0 :(得分:0)
假设我理解了这个问题 - 这不太可能,而且 createFromMethod
只是返回一些对象,您想将这些对象中的每一个推入一个数组,该数组在 abText
中返回。>
在这种情况下,第 6 行是混乱的。
将第 6 行从 query = {...query, value};
更改为 query = [...query, value];
query = {...[1,2,3], 5} => error missing ":" token
query = [...[1,2,3], 5] => result: [1,2,3,5]
答案 1 :(得分:0)
const query = [];
let abText = (text) => {
text.map(script => createFromMethod(script)).forEach(obj => query.push(obj));
return query;
};
或
const query = [];
let abText = (text) => {
const newObjs = text.map(script => createFromMethod(script));
query = [...query, ...newObjs];
return query;
};