从JSON文件中删除JSON对象 [英] Removing JSON object from JSON file

查看:127
本文介绍了从JSON文件中删除JSON对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试编写一个从json文件中删除对象的函数. json文件使用一系列用户格式进行格式化:

I am trying to write a function that removes an object from a json file. The json file is formatted with an array of users as such:

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

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

The code I wrote is not working for some reason. I want to be able to just pass a variable "test2" into the function and then have that particular user removed from the object, including their answers.

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删除不需要的用户

You can use filter to remove the user you do not want

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对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆