有什么办法可以停止覆盖 json 文件吗?

Is there any way to stop overwriting the json file?

实际上这段代码按预期工作,但是,如果我输入不同的用户 ID,它仍然会覆盖现有用户(而不是文件),我的想法是添加另一个用户 ID

 const user = userId;
 const userObj = {[user]:valueX};
    words.users = userObj;
    fs.writeFileSync('words.json', JSON.stringify(words,null,2), finished);

输入来自这里(readline-sync)

let userId = input.question('Enter yourUserId: ');

是的,我先阅读文件

let words = JSON.parse(fs.readFileSync('words.json'));
const userObj = {[user]:valueX};
words.users = userObj;

您分配给 words.users 的对象需要包括所有现有用户,而不是 您的新用户。

const userObj = {...words.users, [user]:valueX };

从您的代码看来 words.users 是一个对象,在这种情况下

if(!words.users) words.users = {};  // Make sure the words users are created
words.users[user] = valueX;

这会给你一个 words.users 看起来像这样的对象

{user1: valueX1, user2: valueX2}

你可以这样访问

console.log(words.users[user1]); // valueX1