这两个功能有什么区别

问题描述

所以我有一个名为users的json数组。我试图更新单个字段,如果id来自请求等于用户id。当我使用for循环时,它可以工作,但是当我尝试使用forEach时,它就不起作用(没有错误)。我不明白这两者之间的区别。

enter image description here

解决方法

forEach中,user只是一个变量,恰好以作为参数传递给lambda函数的值开头。设置user = ...实际上不会更改原始数组中的任何内容。它也不会更改该数组中当前对象的属性。

考虑改用Object.assign()

Object.assign(user,req.body);