[英]Adding a New Element to an existing JSON Object
我试图将json对象添加到节点js中的现有文件中:当成员注册时,我希望将其数据添加到我现有的json文件中。 我在differents网站上发现了一些技巧和代码来实现这一目标,但仍然没有任何效果。
我的Json文件现在看起来像这样。
{
"Family Name": "Vincent",
"Name": "Test",
"Promotion": "2A",
"Mail": "Vincent@gmail.com",
"Event": "FE only",
"Password" : "test"
}
我希望他注册时看起来像这样:
{
"Family Name": "Vincent",
"Name": "Test",
"Promotion": "2A",
"Mail": "Vincent@gmail.com",
"Event": "FE only",
"Password" : "test"
},
{
"Family Name": "Test",
"Name": "Test",
"Promotion": "2A",
"Mail": "Okay@gmail.com",
"Event": "FE only",
"Password" : "test"
}
希望您能够帮助我。 非常感谢 !
您可以使用一些现有的库(例如: lowdb )
并如下使用
const low = require('lowdb')
const FileSync = require('lowdb/adapters/FileSync')
const adapter = new FileSync('yourfile.json')
const db = low(adapter)
db
.get('users')
.push({ "Family Name": "Vincent", "Name": "Test", ... })
.write()
首先使用JSON数组维护您的数据。 您可以使用节点fs
模块读取和更新文件。 例如:
const fs = require('fs');
function readFileAndSaveData(){
try {
let userData = fs.readFileSync('user.json');
userData = JSON.parse(userData);
userData.push({
"Family Name": "Test",
"Name": "Test",
"Promotion": "2A",
"Mail": "Okay@gmail.com",
"Event": "FE only",
"Password" : "test"
});
fs.writeFileSync('user.json', JSON.stringify(userData));
} catch (error) {
console.log(error);
}
}
var json1 = {
"Family Name": "Vincent",
"Name": "Test",
"Promotion": "2A",
"Mail": "Vincent@gmail.com",
"Event": "FE only",
"Password" : "test"
};
var json2 = {
"Family Name": "Test",
"Name": "Test",
"Promotion": "2A",
"Mail": "Okay@gmail.com",
"Event": "FE only",
"Password" : "test"
}
var arr = []; // create new empty array
arr.push(json1); // push variable1
arr.push(json2); // push variable2
console.log(arr);
结果:
[ { 'Family Name': 'Vincent',
Name: 'Test',
Promotion: '2A',
Mail: 'Vincent@gmail.com',
Event: 'FE only',
Password: 'test' },
{ 'Family Name': 'Test',
Name: 'Test',
Promotion: '2A',
Mail: 'Okay@gmail.com',
Event: 'FE only',
Password: 'test' } ]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.