一: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. Ruby中实现module继承

    module FooModule  def self.included base    base.extend ClassMethods  end module ClassMethods    def ...

  2. java中HttpServletRequest常用获取url、资源名等方法总结

    HttpServletRequest客户端获取请求,客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中.所以我们能够从对象中获取相应信息   端口 request.get ...

  3. 3 Git服务器搭建

    1. 环境部署 系统环境:服务器端:CentOS 6.5 ,ip:192.168.56.1 客户端:CentOS 6.5 ,ip:192.168.56.101 软件版本:服务器端:源码编译安装,git ...

  4. css的relative和position探究

    在CSS中,Position 属性经常会用到,主要是绝对定位和相对定位,简单的使用都没有问题,尤其嵌套起来,就会有些混乱,今记录总结一下,防止久而忘之. CSS position 属性值: absol ...

  5. C# 类使用小demo

    太晚了,不说了,直接上图 运行结果

  6. centos下建立双机信任关系

    在有些情况下,我们希望在两台centos机器之间建立ssh连接的时候,可以不用输入密码.最常见的情况就是在使用脚本做数据库备份的时候.这种情况下,我们可以通过公钥/私钥来建立双机之间的信任关系. 网上 ...

  7. iOS内支付

  8. Redis基本信息

    1.Windows安装地址 https://github.com/MSOpenTech/redis/releases 2.命令行方式运行 执行redis-cli.exe 3.待续

  9. hadoop2.6.4 搭建伪分布式

    安装jdk1.7 http://www.cnblogs.com/zhangXingSheng/p/6228432.html  ------------------------------------- ...

  10. FPGA 开发笔记 点滴

    1.添加包含的文件或参数文件(define.v)的方式:如果文件在工程目录下的一个文件夹下,则可用 `include "../文件夹名/define.v",  文件和工程载同一目录 ...