复制变量 node.js

copying variables node.js

我有这部分代码

console.log(b);
let c = b.substr(0);
console.log(b[b.length - 1] + ' ' + c[Math.floor(c.length / 2)]);
c[Math.floor(c.length / 2)] = b[b.length - 1];
console.log(b[b.length - 1] + ' ' + c[Math.floor(c.length / 2)]);
//some code changing c
console.log(c);

而且 c 和 b 似乎是内存的同一部分,因为 console.log(c);console.log(b); 给出相同的结果,另外两个 console.logs 给出相同的结果,当第二个显然应该给出两个相同的值(它给出不同的值)。如何正确地复制变量的值而不像 JSON.parse(JSON.stringify(b)) 这样奇怪?在 JS 中是否有节省时间和内存的方法来做到这一点?

substr函数returns一个新的String(新对象),因此c和b不是同一个对象。

此外,通过为某个索引分配不同的字符来更改字符串不起作用,因为它不会更改原始对象。

如果您要做的是替换特定索引处的字符,这里有一个有用的 post: How do I replace a character at a particular index in JavaScript?