我想从节点中的JSON文件中删除一个字段。假设我的文件看起来像这样
{
'name': John Doe,
'nickname': Johnny
}
如果我说delete('nickname');
我希望它看起来像这样。
{
'name': John Doe
}
我应该怎么做呢?还有办法检查文件中剩余的元素数量吗?如果是这样,如果它是空的,我怎么能删除整个文件?
更新: 这是我正在调试的代码
var data = require(pathToFile);
var element = data[deleteKey];
delete element;
fs.writeFileSync(pathToFile, JSON.stringify(data, null, 4), 'utf8');
res.end(deleteKey + ' was deleted');
console.log(JSON.stringify(data, null, 4));
答案 0 :(得分:3)
要检查JSON文件中剩余的元素数量,可以使用:
Object.keys(jsonArray).length;
但要删除元素:
var json =
{
'name': John Doe,
'nickname': Johnny
}
var key = "name";
delete json[key];
对于删除文件,您可以使用ajax并调用服务器端文件来完成此操作。
答案 1 :(得分:2)
你可以删除它......
var myObj = { 'name': 'John Doe', 'nickname': 'Johnny'};
delete myObj.nickname;
或强>
var myObj = { 'name': 'John Doe', 'nickname': 'Johnny' };
delete myObj["nickname"];
<强>输出强>
{name: "John Doe"}