json - 从 JSON 文件中删除 JSON 对象

标签 json node.js express fs

我正在尝试编写一个从 json 文件中删除对象的函数。 json 文件的格式是这样的用户数组:

{
  "users": [ 
    {
      "username": "test1",
      "answers": [
        "Red",
        "Blue",
        "Yellow",
        "Green"
      ]
    },
    {
      "username": "test2",
      "answers": [
        "1",
        "2",
        "3",
        "4"
      ]
    } 
  ]
}

我编写的代码由于某种原因无法正常工作。我希望能够将变量“test2”传递到函数中,然后将该特定用户从对象中删除,包括他们的答案。

var removeUser = user;
var data = fs.readFileSync('results.json');
var json = JSON.parse(data);
var users = json.users;

delete users.users[user];

fs.writeFileSync('results.json', JSON.stringify(json, null, 2));

最佳答案

您可以使用filter 来删除您不想要的用户

var fs = require('fs');
var removeUser = "test2";
var data = fs.readFileSync('results.json');
var json = JSON.parse(data);
var users = json.users;
json.users = users.filter((user) => { return user.username !== removeUser });
fs.writeFileSync('results.json', JSON.stringify(json, null, 2));

关于json - 从 JSON 文件中删除 JSON 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40537990/

相关文章:

python - 无法连接到 Cosmos 以使用 Python 或 Node.js 客户端查询 Hive

javascript - Node的bodyParser和express的urlencoded中间件有什么区别?

json - 在Hive中将时间戳转换为Hive格式时出错

javascript - 无法从 JSON 对象获取数据

javascript - 将 HTML 映射到 JSON

java - Servlet 无法识别 JSON?

node.js - Socket.IO 向房间发送聊天消息

sql-server - msnodesql 模块在编译期间出现错误

node.js - Expressjs 的 Jade 路径解析

javascript - 表达 js 流行为