方法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
}
]
}
}

Json文件删除元素的更多相关文章

  1. Java读取json文件并对json数据进行读取、添加、删除与修改操作

    转载:http://blog.csdn.net/qing_yun/article/details/46865863#t0   1.介绍 开发过程中经常会遇到json数据的处理,而单独对json数据进行 ...

  2. 前端Json 增加,删除,修改元素(包含json数组处理)

    一:基础JSON对象  二:JSON数组数据 以下为增删修改方法: <!DOCTYPE html> <html lang="en"> <head> ...

  3. ios项目里扒出来的json文件

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Menlo; color: #000000 } p.p2 { margin: 0.0px 0. ...

  4. .net core2.0添加json文件并转化成类注入控制器使用 让js调试更简单—console

    .net core2.0添加json文件并转化成类注入控制器使用 上一篇,我们介绍了如何读取自定义的json文件,数据是读取出来了,只是处理的时候太麻烦,需要一遍一遍写,很枯燥.那么有没有很好的办法呢 ...

  5. 编辑修改json文件(PSCustomObject)

    #$uname:用户 #$mails:需要绑定或删除的邮箱,如有多个邮箱,中间以,为分隔符,无需添加引号 #######################脚本开始#################### ...

  6. Qt读写三种文件,QSettings读ini配置文件,QJsonDocument读JSON文件,QDomDocument读xml文件

    第一种INI配置文件 .ini 文件是Initialization File的缩写,即初始化文件. 除了windows现在很多其他操作系统下面的应用软件也有.ini文件,用来配置应用软件以实现不同用户 ...

  7. Json文件解析(下)

    Json文件解析(下) 代码地址:https://github.com/nlohmann/json   从STL容器转换 任何序列容器(std::array,std::vector,std::dequ ...

  8. Json文件解析(上)

    Json文件解析(上) 代码地址:https://github.com/nlohmann/json 自述文件 alt=GitHub赞助商 data-canonical-src="https: ...

  9. Python【8】-分析json文件

    一.本节用到的基础知识 1.逐行读取文件 for line in open('E:\Demo\python\json.txt'): print line 2.解析json字符串 Python中有一些内 ...

随机推荐

  1. blucesun 解决npm报错:Module build failed: TypeError: this.getResolve is not a function

    1.sass-loader的版本过高导致的编译错误,当前最高版本是8.x,需要退回到7.3.1 运行: npm uninstall sass-loader(卸载当前版本) npm install sa ...

  2. 使用tinyproxy进行ip代理

    爬虫经常用到ip代理.解决方案无非几种: 1.网络上寻找一些免费代理,优点:免费不限量:缺点:可用性较低,验证费时间费资源.一些有免费代理的网站,西刺代理,站大爷,89免费代理等等,网上可以搜出一大堆 ...

  3. 5.Dropout

    import numpy as np from keras.datasets import mnist from keras.utils import np_utils from keras.mode ...

  4. Summer training #11

    A:水 #include <bits/stdc++.h> #include <cstring> #include <iostream> #include <a ...

  5. Easy UI 入门

    Easy UI常用于企业级开发的UI和后台开发的UI,比较重. 以下组件中的加载方式,属性和事件,方法和组件种类并不全,只是作为参考和入门学习. 1.Draggable(拖动)组件 不依赖其他组件 1 ...

  6. Eclipse快捷方式早知道!Productive Workflow不再是问题

    MyEclipse CI 2019.4.0安装包下载 本文将为大家介绍Eclipse快捷方式列表,希望可以帮助您提供工作效率.快捷方式主要分以下几个区域: 导航 通用编辑 Java编辑器 插件开发 工 ...

  7. Js之DateFormat工具类

    /** * 对Date的扩展,将Date转化为指定格式的String * 年(y).季度(q).月(M).日(d).小时(h).分(m).秒(s)可以用1-2个占位符 * 示例: * FormatDa ...

  8. 题解 【NOIP2011】计算系数

    [NOIP2011]计算系数 Description 给定一个多项式 (ax+by)^k ,请求出多项式展开后 x^n * y^m 项的系数. Input 共一行,包含 5 个整数,分别为 a,b,k ...

  9. react创建项目后运行npm run eject命令将配置文件暴露出来时报错解决方法

    最近在用create-react-app创建项目,因要配置各种组件,比如babel,antd等, 需要运行npm run eject命令把项目的配置文件暴露出来,但是还是一如既然碰到报错,因为是在本地 ...

  10. jquery mouseenter()方法 语法

    jquery mouseenter()方法 语法 作用:当鼠标指针穿过元素时,会发生 mouseenter 事件.该事件大多数时候会与 mouseleave 事件一起使用.mouseenter() 方 ...