摘自:http://xosadan.iteye.com/blog/1100383

关于json对象的删除

一个json对象在后台产生了,但是有些数据可能无效或者不合法,所以需要在前台作些例外处理,比如删除掉。

json的删除有很多种,直接用过 delete json对象方式。

举例如下
Js代码
var columns = [
{name:"bigTitle",caption:reportData.bigTitle,children:[
{name:"orgName",caption:"组织结构名称",width:,mode:"string"},
{name:"helpinfo",caption:reportData.columnCaption[],
children:[{name:"workday_month",caption:"工作日数",width:,mode:"number",format:"#"},
{name:"loggedday_month",caption:"登录天数",width:,mode:"number",format:"#"}]
},
{name:"helpinfo",caption:reportData.columnCaption[],
children:[{name:"workday_week1",caption:"工作日数",width:,mode:"number",format:"#"},
{name:"loggedday_week1",caption:"登录天数",width:,mode:"number",format:"#"}]
},
{name:"helpinfo",caption:reportData.columnCaption[],
children:[{name:"workday_week2",caption:"工作日数",width:,mode:"number",format:"#"},
{name:"loggedday_week2",caption:"登录天数",width:,mode:"number",format:"#"}]
},
{name:"helpinfo",caption:reportData.columnCaption[],
children:[{name:"workday_week3",caption:"工作日数",width:,mode:"number",format:"#"},
{name:"loggedday_week3",caption:"登录天数",width:,mode:"number",format:"#"}]
},
{name:"helpinfo",caption:reportData.columnCaption[],
children:[{name:"workday_week4",caption:"工作日数",width:,mode:"number",format:"#"},
{name:"loggedday_week4",caption:"登录天数",width:,mode:"number",format:"#"}]
},
{name:"helpinfo",caption:reportData.columnCaption[],
children:[{name:"workday_week5",caption:"工作日数",width:,mode:"number",format:"#"},
{name:"loggedday_week5",caption:"登录天数",width:,mode:"number",format:"#"}]
}
]}
]; 根据rtData.columnCaption 判断,如果为null,则删除该节点,不予显示。 用过 delete columns[]['children'][]; 无效,报js错误,后来发现 删除确实是删除了,但是最后还遗留了一个逗号,导致IE下报错,查了很多资料无解。 最后换了个解决方法。 columns[]['children'].pop(); pop()方法表示删除最后一个节点。 工作日历的要求正好满足该要求,从后递减。 其他类似的方法有如下:
var person={name:"yaoMing",sex:"m",age:""};
jsonObj2.persons.push(person);//数组最后加一条记录
jsonObj2.persons.pop();//删除最后一项
jsonObj2.persons.shift();//删除第一项
jsonObj2.persons.unshift(person);//数组最前面加一条记录
只要适合Javascript的方法都是可以用在JSON对象的数组中的!所以还有另外的方法splice( )进行crud操作!
//删除
jsonObj2.persons.splice(,);//开始位置,删除个数
//替换不删除
var self={name:"tom",sex:"m",age:""};
var brother={name:"Mike",sex:"m",age:""};
jsonObj2.persons.splice(,,self,brother);//开始位置,删除个数,插入对象
//替换并删除
var self={name:"tom",sex:"m",age:""};
var brother={name:"Mike",sex:"m",age:""};
jsonObj2.persons.splice(,,self,brother);//开始位置,删除个数,插入对象

关于json对象的删除的更多相关文章

  1. JSON对象添加删除属性

    假如目前我们有如下一个Json对象 var jsonObj={ 'param1':22, 'param2' :33 }; 增加属性: 我们现在向该对象jsonObj中添加一个新的属性字段:param3 ...

  2. javascript json对象操作(基本增删改查)

    /** * Json对象操作,增删改查 * * @author lellansin * @blog www.lellansin.com * @version 0.1 * * 解决一些常见的问题 * g ...

  3. javascript里面的数组,json对象,动态添加,修改,删除示例

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  4. 在Javascript操作JSON对象,增加 删除 修改

    在Javascript操作JSON对象,增加删除修改全有的,详情见代码 <script type="text/javascript"> var jsonObj2 = { ...

  5. 关于json中对象的删除

    一个json对象在后台产生了,但是有些数据可能无效或者不合法,所以需要在前台作些例外处理,比如删除掉. json的删除有很多种,直接用过 delete json对象方式. 举例如下 Js代码 var ...

  6. JS中彻底删除json对象组成的数组中的元素

    只是分享一个小知识~ 在JS中,对于某个由json对象组成的数组,例如: var test = [{ "a": "1", "b": &quo ...

  7. javascript;Jquery;获取JSON对象,无刷新分页,异步加载,异步删除,实例。

    AjaxNewsList: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> < ...

  8. javascript 对象属性的添加,删除,json对象和字符串转换方法等

    1:动态添加 对象属性 var obj = new Object(); console.log (obj.username); obj.username = "haha"; con ...

  9. json对象数组的创建、遍历、添加、删除、修改、js的splice()用法

    本文链接:https://blog.csdn.net/houfengfei668/article/details/79843625 )第二种方式:手动构造json对象数组 )for )用splice方 ...

随机推荐

  1. 【hdoj_2189】来生一起走(母函数)

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=2189 本题的数学模型如下: 分解的问题,常用母函数求解,这里要求每个"硬币"的价值必须 ...

  2. Laravel通过Swoole提升性能

    1.安装配置laravel 1.1.composer下载laravel composer create-project --prefer-dist laravel/laravel blog " ...

  3. string char * const char *之间的互相转换

    string  ->   const char * 用str的c_str()方法或者data()方法均可,这个两个方法返回值为cong char * string str = "hel ...

  4. Linux下使进程在后台运行

    怎么样使程序在后台执行 ///////////////////  nohup  ./nn > nn.log  2 > &1  &   //////////// 方法有很多, ...

  5. HDU 1002.A + B Problem II-数组模拟-大数相加

    A + B Problem II Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  6. 第K短路模板【POJ2449 / 洛谷2483 / BZOJ1975 / HDU6181】

    1.到底如何求k短路的? 我们考虑,要求k短路,要先求出最短路/次短路/第三短路……/第(k-1)短路,然后访问到第k短路. 接下来的方法就是如此操作的. 2.f(x)的意义? 我们得到的f(x)更小 ...

  7. python——聊聊iterable,sequence和iterators

    ---------------------------------------------------------------前言----------------------------------- ...

  8. 洛谷——P1743 矩阵 III

    P1743 矩阵 III 题目背景 usqwedf 改编系列题. 题目描述 给定一个n*m的矩阵,问从左上角走到右下角有多少条路径. 输入输出格式 输入格式: 一行两个正整数 n,m 输出格式: 路径 ...

  9. 【OpenStack】源码级深入了解删除虚拟机操作

    首先看一下虚拟机有多少种状态:(/nova/compute/vmstates.py) ACTIVE = 'active' # VM is running BUILDING = 'building' # ...

  10. 单能X射线产生方法

    主要是荧光 利用布拉格准则, 关键词如下.. 国内有些专利 monochromating crystal spectrometer 物理实验设备名称翻译 ... 单色光检糖计 monochromati ...