一: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. 442. Find All Duplicates in an Array

    https://leetcode.com/problems/find-all-duplicates-in-an-array/ 一列数,1 ≤ a[i] ≤ n (n = size of array), ...

  2. MVC 导出Excel 的其中一方法(View导出excel)

    场景:mvc下导出excel 思路:使用View导出excel 步骤: 1.导出标签添加事件 $("#export_A").click(function(){ //省略代码.... ...

  3. 基于TXT文本的简单图书管理系统

    1 ////////////////////////////////////////////////////////////////////////////////////// //SqList.h ...

  4. DateUtil(比较两个日期是否是同一天)

    1.比较两个日期是否是同一天 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date la ...

  5. 【mongo】聚合相关资料

    一个很好的博客:http://www.cnblogs.com/shanyou/p/3494854.html 官网:https://docs.mongodb.com/manual/reference/o ...

  6. luac++

    Cocos2d-x下Lua调用自定义C++类和函数的最佳实践 洪亮 305 2014年08月09日 发布   1 推荐 21 收藏,14.9k 浏览 关于cocos2d-x下Lua调用C++的文档看了 ...

  7. Spring+SpringMvc+Mybatis框架集成搭建教程

    一.背景 最近有很多同学由于没有过SSM(Spring+SpringMvc+Mybatis , 以下简称SSM)框架的搭建的经历,所以在自己搭建SSM框架集成的时候,出现了这样或者那样的问题,很是苦恼 ...

  8. [转]金融业容灾技术分析 (终于看到QREP了)

    源地址:http://www.cnblogs.com/SuperXJ/p/3480929.html 数据复制技术很多,初步比较如下. 后面重点讨论银行最常用的存储复制和数据库复制..当然,我最推荐的还 ...

  9. NYOJ之题目325 zb的生日

    -------------------------------------- 刷一辈子水题... AC代码: import java.util.Scanner; public class Main { ...

  10. 阿里云CentOS7系列一 -- 安装JDK7的方法.

    最近因为数据采集以及生产环境冲突.导入windows Server 2008系统经常死机.经讨论决定把采集服务程序和生产服务进行分开.采集程序通过windows Server2008运行.而生产程序通 ...