对象数组 javascript ad 属性的问题

problem with array of object javascript ad property

提问人:Salvatore Lorello 提问时间:8/1/2022 最后编辑:Rohìt JíndalSalvatore Lorello 更新时间:8/1/2022 访问量:35

问:

我有这个函数,它接受一个对象数组作为输入,并将其转换为字符串数组,但是当我做控制台日志时,属性是错误的,我不明白为什么。 如您所见,两个控制台日志属于同一对象,在第一个中,该属性在第二个控制台中有一个值 .log,我直接访问它的地方具有另一个值x.credititoTotalex.credititoTotale

const stringArray = [];
export const convertToStringForDb = (objectArray) => {
  objectArray.forEach((x) => {
    console.log(x);
    console.log(x.credititoTotale + " " + x.id);
    stringArray.push(
      `${x.id}/${x.cognome}/${x.nome}/${x.totaleCG}/${x.time}/${x.credititoTotale}`
    );
  });

  return stringArray;
};

查看控制台的屏幕--->屏幕.log

当我打印 x 时,“credititoTotale”的值为“-20” 当我打印 x.credititoTotale 时,值为“-10”

它应该始终相同,因为它是在相同的 for 循环中打印的相同对象

JavaScript ReactJS Arrays 对象 属性

评论

0赞 Ji aSH 8/1/2022
1- 你应该在这里使用 map 而不是 forEach ;2- objectArray 中对象的类型是什么?对象定义中可能存在导致此行为的某些内容。
0赞 Rohìt Jíndal 8/1/2022
您的代码看起来很完美,我没有看到任何问题。这是工作小提琴。jsfiddle.net/oev3L7br
0赞 Salvatore Lorello 8/1/2022
是的,我也单独测试过它,但我不明白为什么如果我在我应该使用它的上下文中使用它,它会给我这个错误,这是我无法解释的。从控制台 .log 图像中可以看出,我从两个不同的值发布

答: 暂无答案