手机版

详细说明nodejs对本地json文件的添加、删除和修改

时间:2021-08-20 来源:互联网 编辑:宝哥软件园 浏览:

你好!Nodejs的文件系统对于node的文件系统来说肯定不陌生。这两天一直在思考一个问题,我是否可以在本地操作我的本地json文件,这样就有了一个本地的文本数据库。如果是便利贴或者录音软件,我不需要连接后台数据库。我可以自己操作本地json文件,自己用node写后台。答案是肯定的。让我们一起来实现它。

1.提高

首先,让我们看看演示的目录结构

这里写图片描述

让我们来看看person.json的内容

这里写图片描述

没什么问题。下一步是见证奇迹

写下nodejs的代码

var fs=require(' fs ');Varparams={'id' :5,' Name' : '白眉鹰王' }//在实际开发中,id必须随机生成,不会重复。下一篇文章将写如何生成不会随机重复的随机数。现在模拟假数据//写json文件选项函数writeJson(params){ //读出Json文件fs.readfile('。/mock/person.json ',函数(err,data){ if(err){ return console . error(err);} var person=data . tostring();//将二进制数据转换为字符串person=JSON . parse(person);//将字符串转换为json对象person . data . push(params);//将传递的对象推入数组对象。人。总计=人。数据长度;//定义总页数,为以后分页打下基础console . log(person . data);var str=JSON . stringify(person);//因为nodejs '编写的文件只知道字符串或二进制数,所以将json对象转换为字符串,并在json文件fs.writefile('中重写。/mock/person.json ',str,function(err){ if(err){ console . error(err);} console . log('-);}) })}writeJson(params)//执行它;结果如下

这里写图片描述

让我们看看json文件的结果

这里写图片描述

看,json文件已经被添加了

2.删除

var fs=require(' fs ');//删除选项函数delete json (id) {fs.readfile('。/mock/person.json ',函数(err,data){ if(err){ return console . error(err);} var person=data . tostring();person=JSON . parse(person);//读取数据并删除(var I=0;I person . data . length;i ){ if(id==person.data[i]。id){//console . log(person . data[I])person . data . splice(I,1);} } console . log(person . data);person . total=person . data . length;var str=JSON . stringify(person);//然后将数据写入fs.writefile('。/mock/person.json ',str,function(err){ if(err){ console . error(err);} console . log('-成功删除');})})} deleteJson(5);//执行这里写图片描述

这里写图片描述

第五个被删除了

3.变化

开头的json文件是这样的

这里写图片描述

下面的代码

var fs=require(' fs ');var params={ ' name ' : ' the Monkey King ' }函数更改JSON (ID,params) {fs.readfile('。/mock/person.json ',函数(err,data) {if (err) {console。错误(err);} var person=data . tostring();person=JSON . parse(person);//读取数据并修改(var I=0;I person . data . length;I) {if (id==person.data [I]。id) {console.log('相同id ');for(params中的var key){ if(person . data[I][key]){ person . data[I][key]=params[key];} } } } person . total=person . data . length;var str=JSON . stringify(person);//console . log(str);fs.writeFile('。/mock/person.json ',str,function(err){ if(err){ console . error(err);} console . log('-修改成功');console . log(person . data);}) })}changeJson(3,params)//执行它;结果如下

这里写图片描述

看看json文件

这里写图片描述

修改成功!

4.支票

现在模拟分页

让我们看看json文件是什么样子的

这里写图片描述

上层代码

var fs=require(' fs ');//分页模拟是根据返回的页数进行的。函数pagination(p,s){ //p是页数,比如第一页为0,第二页为1。s是每页有多少条数据fs.readfile('。/mock/person.json ',函数(err,data){ if(err){ console . error . } var person=data . tostring();person=JSON . parse(person);//读出数据//console . log(person . data);var length=person . data . length;var PagePeer=person . data . slice(s * p,(p ^ 1)* s);console . log('-console . log(page person);})}分页(0,6);//查询第一页,每页数据个数为6,执行结果为

这里写图片描述

让我们看看第二页

执行分页(1,6);

执行结果是

这里写图片描述

通过类比,实现了模拟分页的效果

5.摘要

好了,一套基本的增删改查都是这样写的。感觉那个节点还是很强大的,感觉自己有了一些进步。虽然有些人可能觉得这样写没有意义,但也许,我觉得很有意义,收获也不少!

以上就是本文的全部内容。希望对大家的学习有帮助,支持我们。

版权声明:详细说明nodejs对本地json文件的添加、删除和修改是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。