zoukankan      html  css  js  c++  java
  • 由JSON的delete来复习一下JSON

    今天看代码看到了一行这样写的

    delete d.parent

    联系上下文觉得应该是json里边的方法,测试后得到结果:delete jsonObj.attr 或 delete jsonObj[attr] 是删除JSON对象的一个属性

    之前都是 jsonObj.attr = '' 现在看有点low哦

    网上查询一下果然是这样,接下来就回顾一下JSON有那些常用方法呢

    1.与字符串之间的转换:

    let jsonStr = JSON.stringify(jsonObj);//json对象转化为json字符串,调试时候经常用到
    
    let jsonObj  = JSON.parse(jsonStr);//json字符串转化为json对象
    
    let jsonObj  = eval('('+jsonStr+')');//json字符串转化为json对象
    
    let jsonObj  = jsonStr.parseJSON();//json字符串转化为json对象
    

      特别注意:如果obj本来就是一个JSON对象,那么使用eval()函数转换后(哪怕是多次转换)还是JSON对象,但是使用parseJSON()函数处理后会有问题(抛出语法异常)。

    2.用最原始的for循环遍历json数组或者用 for in 遍历对象

    for(let key in jsonObj){
      console.log(key + ':' + jsonObj[key]);  
    }
    

    3.然后增改:jsonObj['newAttr'] = 'jock'//添加了一个key为newAttr value为jock的节点

    jsonObj[attr] = 'newValue';//修改为新值

    写这么多感觉没什么,就是想记住delete 这个,不想以后再遇见再用 jsonObj.attr = '';的方法了

  • 相关阅读:
    [转载]数据类型和Json格式 Joe
    为页面去掉下划线
    基于Spring,struts,hibernate的JYazd仿yazd及jivejdon
    tomcat下建立虚拟目录
    用例建模指南
    王老师好,学生请教个设计上的问题
    博客第一个处女作,顺便测试一下
    自定义可以和with一起工作的类
    boost cpu_timer
    静态初始化的相依性
  • 原文地址:https://www.cnblogs.com/rainbowLover/p/12449643.html
Copyright © 2011-2022 走看看