zoukankan      html  css  js  c++  java
  • JSON的初步认识

    JSON

    json是一种数据格式,它本质是字符串,长的像js中的对象。

    一般json数据都是后端给的 '{"name":"诗进","age":18}' 或者 '[]'

    `JSON.parse() ` 可以把JSON格式的数据转成js中的对象

    ( 高版本浏览器才能使用,低版本用json2.js)

    例子:

    1 let str = '{"name":"诗进","age":18}'; //(标准格式)
    2 console.log(JSON.parse(str));//{name: "诗进", age: 18}

    注意:

       使用JSON.parse的时候必须保证json是标准格式的 key值必须有双引号,value值为字符串的也要为双引号 key值为单引号会报错。

    /***************************************************************************************************************************************/

    `eval()` 能够把字符串尽量转成js能够运行的代码

    小技巧:

       在使用eval传化json的时候,json用字符串括号包一下 eval('('+json+')')

    注意:

       eval是有可能被注入病毒的 new Function('','return'+json)(); 也能解决这个问题

    例子:

    1 let json = "{'name':'小明','age':18}"; //非标准json
    2 console.log(eval('('+json+')')); //{name: "小明", age: 18} 
    4 let obj = new Function('','return'+json)(); 5 console.log(obj);//{name: "小明", age: 18}

    /***************************************************************************************************************************************/

    `JSON.stringify` 把对象转成标准json

    注意:

       undefined、函数是转不出来的.

    例子:

    1 let obj = {name:'小明','age':18,a:function(){},b:true};
    2 
    3 console.log(JSON.stringify(obj));//{"name":"小明","age":18,"b":true}
  • 相关阅读:
    fastjson
    抽象类和接口
    Linux发行版,分类,CentOS下载
    《Head First 设计模式》读后总结:基础,原则,模式
    java.lang.NoSuchMethodError
    在word中优雅地插入代码
    Java读取Maven工程下的配置文件,工具类
    移动互联网10年,传奇一直在发生
    Spring整合MybatisPlus学习笔记
    IDEA环境下SSM整合------注解开发
  • 原文地址:https://www.cnblogs.com/MrZhujl/p/9837711.html
Copyright © 2011-2022 走看看