How can I add an object to this JSON in Javascript?
P粉476883986
P粉476883986 2024-02-03 23:46:08
0
2
310

I have this JSON in the file:

{
  "user1": {
    "id": 1,
    "nVote": 0,
    "comment": ""
  }
}

I want to add an object user2 with the same parameters and corresponding values.

function json2Array(json) {
  var result = [];
  var keys = Object.keys(json);
  keys.forEach(function (key) {
    result.push(json[key]);
  });
  return result;
}

const fs = require('fs');
const obj = JSON.parse(fs.readFileSync('./datei.json', 'utf8'));
const arObj = json2Array(obj);

let user = [];
user['user2'] = {
  "id": 2,
  "nVote": 1,
  "comment": 'test'
};

arObj.push(user);

result:

[
      { id: 1, nVote: 0, comment: '' },
      [ user2: { id: 2, nVote: 1, comment: 'test' } ]
    ]

But I hope to end up with this result:

{
      "user1": { id: 1, nVote: 0, comment: '' },
      "user2": { id: 2, nVote: 1, comment: 'test' }
    }

P粉476883986
P粉476883986

reply all(2)
P粉904405941

All you have to do is treat the json object as an array

Simple

think about it

[
{user1:{"id":2,"nVote":1,...}}
{user2:{"id":2,"nVote":1,...}}
]

so

const obj = []
obj.push({user1:{id:2,nVote:2})
obj.push(({user2:{id:3,nVote:1})

This is what you need, then you can use fs to extract it to a json file for storage

P粉536909186

If the result you want is an object, there is no need to convert it to an array. Just add a property to the object.

const obj = JSON.parse(fs.readFileSync('./datei.json', 'utf8'));
obj['user2'] = {
  "id": 2,
  "nVote": 1,
  "comment": 'test'
};
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!