一:JSON是什么

JSONg格式:对象是一个无序的“名称/值”对的集合。

对象以括号开始,括号结束。

名称冒号分隔值。

"名称/值"之间用逗号分隔

例:

var people = {
    "programmers": [{
        "firstName": "Brett",
        "lastName": "McLaughlin",
        "email": "aaaa"
    }, {
        "firstName": "Jason",
        "lastName": "Hunter",
        "email": "bbbb"
    }, {
        "firstName": "Elliotte",
        "lastName": "Harold",
        "email": "cccc"
    }]
}
访问数据:people.programmers[0].lastName;
修改数据:people.programmers[0].lastName=“423nfns”
-----------------------------------------

二:JSON的方法

JSON.parse()和JSON.stringify()方法区别

parse用于把字符串解析成JSON格式的对象。

stringify用于将JSON格式的对象转换成JSON格式的字符串。

例var student = new Object();

student.name = "Lanny";
student.age = "25";
student.location = "China";
var json = JSON.stringify(student);
alert(json);
//alert(student);
结果为:{"name":"Lanny","age":"25","location":"Chia"} alert(student)
结果为:[object Object]
------------------------------------------------------------------------------------------------------------------------------------------------
三:JSON格式的应用删除数据:
转载:http://xulavigne.blog.163.com/blog/static/196705036201211220250176/
 
删除JSON元素,首先要弄清JSON的数据格式,javascript中的JSON,JSON是由对象和数组结构组成,只要学会JavaScript中对象和数组删除的方法即可对JSON数据进行删除操作。
JavaScript删除数组的3种方法
(1)shift()方法
shift是删除数组中第一项的值,并且返回删除元素的值;如果数组为空则返回undefined。
var array=[1,9,6,3,8,5];
var m=array.shift()-->1
console.log(array)-->9,6,3,8,5
 
2、pop()方法
pop方法是用来删除数组中最后一项,并且返回删除的值,如果数组为空则返回undefined。
var array=[1,9,6,3,8,5];
var m=array.pop()-->5
console.log(array)-->1,9,6,3,8
3、splice()方法
可以对数组进行增加、删除、替换
var array=[1,9,6,3,8,5];
var m=array.splice(2,1,3,4)-->6
console.log(array)-->1, 9, 3, 4, 3, 8, 5
注意:被替换的项数不一定要和替换的项数相等,1项可以被换成3项,5项也可以被换成3项,可以用这个方法来对数组进行添加和删除操作。
 
删除:
var array=[1,2,3,4,5];
array.splice(2,0,8,9);--->[]
console.log(array)-->[1, 2, 8, 9, 3, 4, 5]
 
其他不靠谱的数组删除方法
之所以说方法不靠谱,因为并没有真正的删除数组项,而是把它的位置设置空了,本项位置还在,数组项数没变。
不靠谱的数组删除方法1:
var array=[1,2,3,4,5];
array[4]=null;
console.log(array)-->[1, 2, 3, 4, null]
不靠谱的数组删除方法2:
var array=[1,2,3,4,5];
delete array[4];
array-->[1, 2, 3, 4, undefined]
array.length--->5
 
javaScript删除对象的方法
js中删除对象delete操作符
var p={
"name":"kcscs",
"age":29,
"sex":"女"
};
 
delete p.name
for(var i in p){
console.log(i);}//输出age,sex,name项已经被删除了
 
下面JavaScript删除JSON元素
了解JS删除对象和数组的方法后,对JSON数据进行操作
var computer={//这个JSON数据有数组和对象结构组成
"cpu":["intel","AMD"],
"harddisk":["Western Digital","Seagete"],
"motherboard":["ASUS","MSI"]
};
 
如果我们要删除CPU里面的inter这一个元素,因为这是数组里面的一项,所以我们用数组中的方法
computer.cpu.splice(0,1);
console.log(computer.cpu)-->["AMD"],inter被删除了
如果我们想要删除harddisk这一项,因为他是对象中的一项,所以我们要用对象的删除方法进行操作
delete computer.harddisk
for(var i in computer){
console.log(i);}--输出cpu motherboard,harddisk被删除
 
总结:JSON的主要数据结构是对象和数组,我们只要对相应的操作方法,就可以有效的删除JSON中的元素
 
转载自前端开发

JSON相关知识,转载:删除JSON中数组删除操作的更多相关文章

  1. json相关知识

    整理json相关知识: 1.for in 循环获取json中的键(key)与值(value) <!DOCTYPE html> <html lang="en"> ...

  2. json 相关知识

    一:json标准格式: 标准JSON的合法符号:{(左大括号)  }(右大括号)  "(双引号)  :(冒号)  ,(逗号)  [(左中括号)  ](右中括号) JSON字符串:特殊字符可在 ...

  3. 【转载】 C#中数组、ArrayList和List三者的区别

    原文地址:http://blog.csdn.net/zhang_xinxiu/article/details/8657431 在C#中数组,ArrayList,List都能够存储一组对象,那么这三者到 ...

  4. 【转载】Java中使用Jedis操作Redis

    1 package com.test; 2 3 import java.util.HashMap; 4 import java.util.Iterator; 5 import java.util.Li ...

  5. JSON相关知识整理

    JSON   全称:JavaScript Object Notation ,一种轻量级的数据交换格式 示例:{"name":"eric","age&q ...

  6. json相关,浏览器打开json格式的api接口时,进行格式化,chrome插件

    在chrome浏览器中安装Google jsonview插件能够自动格式化json格式的数据.

  7. vue中数组删除,页面没重新渲染

    创建一个组件时,数据类型是数组,在删除这个数组中的数据时,数组中的数据是对的,但页面渲染的数据却不对. 举例:(不一定复现) <ul> <li v-for="(item, ...

  8. 【转载】ruby 中数组函数示例(1)(转)

    函数名称 说明 示例 &      数组与,返回两数组的交集 [1,2] & [2,3] =>[2]   * 复制数组n次 [1,2]*2       => [1,2,1, ...

  9. js中数组删除 splice和delete的区别,以及delete的使用

    var test=[];test[1]={name:'1',age:1};test[2]={name:'2',age:2};test[4]={name:'3',age:3}; console.log( ...

随机推荐

  1. Ajax加载菊花loding效果

    Ajax 异步请求的时候,一般都会利用一个动态的 gif小图片来制作一个Ajax Loading ,以便增加用户体验. 这里我们使用Spin.js ,该 js 脚本压缩后5k,可以不用任何图片,任何外 ...

  2. 别老嫌Mac系统难用 这些快捷键你都用过吗

    苹果今年10月发布的全新带把儿(bar)的MacBook,轻薄炫酷的外观大受欢迎,其中当然不乏很多从Windows转到Mac阵营的用户.不少习惯了Windows操作习惯的用户在上手Mac时都会觉得非常 ...

  3. 第三天--html区块

    <!Doctype html><html>    <head>        <meta charset="utf-8">      ...

  4. 打开eclipse报错

    隔了一段时间没用eclipse, 打开之后报错: 从报错上来看是因为java版本太低导致的. 我打开cmd, 运行java -version 后 发现java 版本已经更新到了1.8 然后就有点懵. ...

  5. Werkzeug工具包学习-官方例子Shortly分析

    为了学习werkzeug的wsgi框架工具,今天真对官网的例子进行调试运行.涉及到了werkzeug工具包,jinja2前端模版,以及redis内存库,之后可以灵活定制自己主页.再次,作以记录. 首先 ...

  6. "_OBJC_CLASS_$_CMMotionManager", referenced from:

    好久没写随笔了,今日项目爆红.如下: 缺少系统库 CoreMotion.framework, 在Build Phases -> Link Binary With Libraries 中添加即可.

  7. java垃圾回收机制

    1 .垃圾回收机制(GC)垃圾回收就是回收内存中不再使用对象:(1)垃圾回收的步骤:1)查找内存中不再使用的对象:2)释放这些对象所占用的内存:(2)查找内存中不再使用的对象方法:1)引用计数法如果一 ...

  8. vmware 下centos7配置网络

    步骤一: 虚拟机中的网络设置配置为桥接模式: 步骤二: 注:本人配置的为非静态IP,ip为自动获取 vi /etc/sysconfig/network-scripts/ifcfg-eth0 配置内容如 ...

  9. iOS内支付

  10. UIAlertController使用

    // 将UIAlertController模态出来 相当于UIAlertView show 的方法// 初始化一个一个UIAlertController    // 参数preferredStyle: ...