方法1:delete

注意,该方法删除之后的元素会变为null,并非真正的删除!!!

举例:

原json:

{
"front" : {
"image" : [
{
"file" : "D:\\app\\data\\temp\\gn_image_0.jpg",
"height" : 253,
"width" : 190,
"x" : 49,
"y" : 110
},
{
"file" : "D:\\app\\data\\temp\\gn_image_1.jpg",
"height" : 60,
"width" : 260,
"x" : 375,
"y" : 460
}
],
"text" : [
{
"b" : true,
"data" : "姓名 卢战士",
"font" : "宋体",
"size" : 8,
"x" : 260,
"y" : 150
}
]
}
}

我们现在读取该JSON文件然后删除image第一个元素:

var fs=require("fs");
var path=require("path");
var jsonStr=fs.readFileSync(path.join(__dirname,"../1.json"));
var json=JSON.parse(jsonStr);
delete json.front.image[0];
console.log(JSON.stringify(json));

最后打印内容为:

{
"front": {
"image": [
null,
{
"file": "D:\\app\\data\\temp\\gn_image_1.jpg",
"height": 60,
"width": 260,
"x": 375,
"y": 460
}
],
"text": [
{
"b": true,
"data": "姓名 卢战士",
"font": "宋体",
"size": 8,
"x": 260,
"y": 150
}
]
}
}

方法2:使用数组的方式删除,彻底删除

JSON数据是由对象和数组数据结构组成,我们只要学会javascript中对对象和数组的删除方法即可对JSON项进行删除操作

用splice方法

这个方法很强大,可以对数组任意项进行增加,删除,替换操作

第一个参数是准备操作的数组位置,第二个参数是从操作位置开始后面的要操作的数组项数,第三个以后的就是,被替换后的内容(如果第三个参数为空就是删除)

var fs=require("fs");
var path=require("path");
var jsonStr=fs.readFileSync(path.join(__dirname,"../1.json"));
var json=JSON.parse(jsonStr);
json.front.image.splice(0,1);
console.log(JSON.stringify(json));

最终打印结果:

{
"front": {
"image": [
{
"file": "D:\\app\\data\\temp\\gn_image_1.jpg",
"height": 60,
"width": 260,
"x": 375,
"y": 460
}
],
"text": [
{
"b": true,
"data": "姓名 卢战士",
"font": "宋体",
"size": 8,
"x": 260,
"y": 150
}
]
}
}

最新文章

  1. 【学习笔记】load-on-startup Servlet
  2. canvas星星炫耀
  3. windows下安装redis以及简单的事例
  4. linux设备驱动归纳总结(三):1.字符型设备之设备申请【转】
  5. 针对ASP.NET页面实时进行GZIP压缩优化的几款压缩模块的使用简介及应用测试!(附源码)
  6. redhat或centos关闭防火墙并开启sshd服务
  7. Unity3D研究院之在把代码混淆过的游戏返混淆回来
  8. 整理js继承
  9. kingso_sort - Taocode
  10. 《生活在Linux中》之:prefer function to alias in Bash
  11. nodeValue、firstChild和lastChild属性
  12. iOS 实现类似QQ分组样式的几种方式
  13. JAVAWEB项目如何实现验证码 (转)
  14. [Codeforces]906D Power Tower
  15. 微信小程序 picker 中range-key的坑
  16. Nginx+Keepalived+Tomcat高可用负载均衡,Zookeeper集群配置,Mysql(MariaDB)搭建,Redis安装,FTP配置
  17. odoo中的ORM操作
  18. ElasticSearch Root身份运行
  19. elastic search文档详解
  20. python与C交互中传入与读取内存空间

热门文章

  1. 如何关闭Win10系统的时间轴功能?
  2. 以tomcat镜像为基础部署war包后再做成镜像
  3. electron api sendInputEvent 源码
  4. 制作CentOS8安装U盘时遇到的“Minimal BASH-like...”问题
  5. SQL 语句 连接
  6. 轻松阅读linux内核源码
  7. OSI七层协议模型、TCP/IP四层模型
  8. python+Appium自动化:Capability配置简介
  9. idea详细设置:编码、代码提示大小写、窗口数量限制、自动导包、serialID、重复代码警告、热部署等设置
  10. React组件:Dragact 0.1.4发布