编辑数组中的对象值:Typescript/Javascript
我有一个函数,它将id/值道具和对象数组作为参数,如下所示:编辑数组中的对象值:Typescript/Javascript,javascript,typescript,Javascript,Typescript,我有一个函数,它将id/值道具和对象数组作为参数,如下所示: export const editNote = (editedNote: Note, notes: Notes): Notes => { notes.find(obj => obj.id === editedNote.id && obj.value === editedNote.value); return notes; 传递参数时: const data = [{id:0, value:'a'}, {i
export const editNote = (editedNote: Note, notes: Notes): Notes => {
notes.find(obj => obj.id === editedNote.id && obj.value === editedNote.value);
return notes;
传递参数时:
const data = [{id:0, value:'a'}, {id:1, value:'b'}]
expect(editNote({id:0, value:'z'}, data)).toEqual([{id:0, value:'z'}, {id: 1, value:'b'}]);
我仍然收到一个不变的值:
Received:
[{"id": 0, "value": "a"}, {"id": 1, "value": "b"}]
请指出我的错误。JS新手,TS新手。editNote()只返回注释。
也许你的意思是:
export const editNote = (editedNote: Note, notes: Note[]): Note[] => {
const note = notes.find(obj => obj.id === editedNote.id);
note.value = editedNote.value;
return notes;
}
为什么不希望值保持不变
editNote
似乎没有任何作用。没有使用find()的结果,然后返回整个notes数组!非常感谢。