替换Javascript中的数组元素会产生意外的结果
我试图用它们的替代品(特定对象)替换数组元素(通用对象),但原始数组中的对象保持不变替换Javascript中的数组元素会产生意外的结果,javascript,Javascript,我试图用它们的替代品(特定对象)替换数组元素(通用对象),但原始数组中的对象保持不变 类特定对象{ } this.Objects=[{},{}]; this.Objects.map((签名者,索引)=>{ //将json泛型转换为js对象 this.Objects[索引]=新的SpecificObject(签名者); }); console.log(this.Objects)迭代集合时,无需修改集合。只需从贴图中返回对象即可 this.Objects = this.Objects.map((s
类特定对象{
}
this.Objects=[{},{}];
this.Objects.map((签名者,索引)=>{
//将json泛型转换为js对象
this.Objects[索引]=新的SpecificObject(签名者);
});
console.log(this.Objects)代码>迭代集合时,无需修改集合。只需从贴图中返回对象即可
this.Objects = this.Objects.map((signer,index) => new SpecificObject(signer));
在迭代集合时,无需修改集合。只需从贴图中返回对象即可
this.Objects = this.Objects.map((signer,index) => new SpecificObject(signer));
您没有正确使用map
。您应该只返回箭头函数中的对象map
实际上返回新数组,其中包含通过应用您提供的函数创建的元素。因此,您还必须重新分配result otthis.Objects
this.Objects = this.Objects.map(signer => {
//convert json generics to js objects
return new SpecificObject(signer);
})
您没有正确使用map
。您应该只返回箭头函数中的对象map
实际上返回新数组,其中包含通过应用您提供的函数创建的元素。因此,您还必须重新分配result otthis.Objects
this.Objects = this.Objects.map(signer => {
//convert json generics to js objects
return new SpecificObject(signer);
})
要返回数组时使用Map。您可以使用forEach来完成您要做的事情。但我觉得这样会更好
this.Objects = this.Objects.map(signer => new SpecificObject(signer))
要返回数组时使用Map。您可以使用forEach来完成您要做的事情。但我觉得这样会更好
this.Objects = this.Objects.map(signer => new SpecificObject(signer))
你的代码是正确的。什么是日志记录?请注意,SO代码段控制台并不完美。在单击Run之前打开Chrome devtools(或类似工具),您应该可以在devtools控制台中看到预期的结果。()您的代码是正确的。什么是日志记录?请注意,SO代码段控制台并不完美。在单击Run之前打开Chrome devtools(或类似工具),您应该可以在devtools控制台中看到预期的结果。()