Rumah  >  Soal Jawab  >  teks badan

Bagaimanakah saya boleh menambah objek pada JSON ini dalam Javascript?

Saya mempunyai JSON ini dalam fail:

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

Saya ingin menambah objek user2 dengan parameter yang sama dan nilai yang sepadan.

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);

Hasil:

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

Tetapi saya mahu berakhir dengan keputusan ini:

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

P粉476883986P粉476883986258 hari yang lalu306

membalas semua(2)saya akan balas

  • P粉904405941

    P粉9044059412024-02-04 15:15:16

    Apa yang anda perlu lakukan ialah merawat objek json sebagai tatasusunan

    Mudah

    Renung-renungkan

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

    Jadi

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

    Inilah yang anda perlukan, kemudian anda boleh menggunakan fs untuk mengekstraknya ke fail json untuk penyimpanan

    balas
    0
  • P粉536909186

    P粉5369091862024-02-04 11:46:41

    Jika hasil yang anda inginkan adalah objek, tidak perlu menukarnya kepada tatasusunan. Hanya tambahkan harta pada objek.

    const obj = JSON.parse(fs.readFileSync('./datei.json', 'utf8'));
    obj['user2'] = {
      "id": 2,
      "nVote": 1,
      "comment": 'test'
    };

    balas
    0
  • Batalbalas