一: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. Robot Framework用户手册 (版本:3.0)

    版权信息:诺基亚网络和解决中心 本翻译尊重原协议,仅用于个人学习使用 1.开始: 1.1 介绍: Robot Framework是一个基于Python的,为终端测试和验收驱动开发(ATDD)的可扩展的 ...

  2. Thread Safety线程安全

    Thread Safe(线程安全)和None Thread Safe(NTS,非线程安全)之分 如果disabled就选择nts(php_stomp-1.0.9-5.5-nts-vc11-x86.zi ...

  3. CentOS7下安装配置MariaDB

    参考: http://www.2cto.com/os/201504/394141.html http://outofmemory.cn/code-snippet/2533/mysql-create-d ...

  4. java 基础导航

    ecplise 常用快捷键 java notepad++ java封装好处和原则 java1 基本概述和java环境变量配置 java2 基本概念介绍和基本关键字.基本数据类型 java3 基本流程语 ...

  5. 多功能前台交互效果插件superSlide

    平时我们常用的"焦点图/幻灯片""Tab标签切换""图片滚动""无缝滚动"等效果要加载n个插件,又害怕代码冲突又怕不兼容 ...

  6. HTML5 的一些小的整理吧

    主要的就是一些HTML 5 API 的使用 也是借鉴别人的博客 ,和MDN(中文部分的还是能看的懂) 上面的一些东西 具体的代码在 有道云笔记里面也有. 先把总得列出来 1.Canvas绘图 学完这个 ...

  7. jquery简单的轮播效果!

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

  8. Learn ES2015

    折腾了大半年的项目,用的angular折腾快疯了. 总算有个小结了.正好闲下来为新的项目做准备,学点新的玩意玩玩,以往ES6都没用过,感觉被大部队甩好远了,抓紧跟上大部队的脚步... 1.利用let和 ...

  9. yii 验证问题

    yii 版本2.08 yii 验证码问题 1.模型里加入'verifyCode', 'captcha','message'=>'error','captchaAction' => 'tes ...

  10. ASN.1 key structures in DER and PEM

    转自:https://tls.mbed.org/kb/cryptography/asn1-key-structures-in-der-and-pem Introduction Everybody lo ...