Javascript 地图中的值是否未更改?
我更改Javascript 地图中的值是否未更改?,javascript,dictionary,foreach,scope,Javascript,Dictionary,Foreach,Scope,我更改行的值以删除所有在地图外,但在地图内行仍有在其中 constkeys=Object.keys(x[0]); csv+=`${keys.join(',')}\n`; x、 forEach((行)=>{ 第[s]行=第[s]行。替换(“;”,“%3B”) console.log(line.signalFormula) csv+=`${keys.map((key)=>line[key]).join(',')}\n`; }) 更新 我的代码现在看起来像这样 const keys = Objec
行的值以删除所有代码>在地图外,但在地图内行仍有代码>在其中
constkeys=Object.keys(x[0]);
csv+=`${keys.join(',')}\n`;
x、 forEach((行)=>{
第[s]行=第[s]行。替换(“;”,“%3B”)
console.log(line.signalFormula)
csv+=`${keys.map((key)=>line[key]).join(',')}\n`;
})
更新
我的代码现在看起来像这样
const keys = Object.keys(x[0]);
csv += `${keys.join(';')}\n`;
x.forEach((line) => {
line[keys[2]] = line[keys[2]].split(';').join('%3B');
console.log(line[keys[2]])
csv += `${keys.map((key) => line[key]).join(';')}\n`;
}
console.log(第[keys[2]]行)这给出了正确的值,但在文件中它是不正确的。如果x是一个包含键“s”中某些字符串的对象数组。
改变
到
s
是一个变量吗<代码>行和行['s']
是不同的东西代码>您的代码将仅替换第一个代码>带有%3B
line[s] = line['s'].replace(';', '%3B')
line['s'] = line['s'].replace(';', '%3B')