JSON(JavaScript Object Notation) JavaScript对象标记法;JSON是与JavaScript高度契合的;
JSON 语法:
    --数组(Array)用"[ ]"表示;
    --对象(Object)用"{ }"表示;
    --名称/值对(name/value)组合成数组和对象;
    --并列的数据用“,”隔开;

{
  “name”:"kobe",
  "age":38
}

 

JSON与XML
  JSON相对于XML来说的优势:
      -- 没有结束标签,长度更短,读写更快
      -- 能够直接被JavaScript解释器解析
      -- 可以直接使用数组

  JSON:

    {
  “name”:"kobe",
  "age":38,
  “friends”:["james","wade","bosh"]
}

  XML:

  <root>
<name>kobe</name>
<age>38</age>
<friends>james</ftiends>
<friends>wade</ftiends>
<friends>bosh</ftiends>
  </root>

  JSON的解析和生成:

    -- eval()函数:   接收参数后将参数直接当成JavaScript的代码执行;

  <script>
var str = "console.log('执行了eval函数')"
eval(str); //控制台上将打印出“执行了eval函数”
  </script>

  eval()函数也可以解析json字符串,但是该函数是比较危险的,因为它是将字符串直接运行的。所以一般用该函数解析json字符串的话不是很合理;

  <script>
var str = ‘{“name”:"kobe","age":38}’
var obj = eval( “(” + str + ")"); // 因为str参数是用大括号括起来的,直接运行的话JavaScript会当成一个代码块运行
console.log(obj)
  </script> 

  --JSON.parse()函数解析json字符串,该函数用来解析json字符串是比较合理的,也多数浏览器也兼容;现在推荐使用此函数来解析JSON。

  <script>
var str = ‘{“name”:"kobe","age":38}’
var obj = JSON.parse( str );
console.log(obj)
  </script>  

JSON.parse() 可以有两个参数,第一个是JSON字符串,第二个是个函数。那么该函数有两个参数:name 和 value,分别代表名称和值。当传入一个JSON字符串后,JSON的每一组名称/值对都要调用此函数。注意,该函数一定要有返回值,返回值 将赋值给 当前的名称(name)。一般运用在解析JSON字符串的同时用该函数对数据进行一些处理。

  <script>
   var str = ‘{“name”:"kobe","age":38}’
var obj = JSON.parse( str , fun );
function fun (name,value){
  if( name == "age" )
    value = 40;
  return value; //一定要有返回值
} //此方法表示在解析JSON时当解析到“age”:38这个名称/值对的时候将该值修改成40;
console.log(obj) //控制台打印出:object {name:"kobe",age:40}
</script>

  

JSON字符串转对象的更多相关文章

  1. 速战速决 (6) - PHP: 获取 http 请求数据, 获取 get 数据 和 post 数据, json 字符串与对象之间的相互转换

    [源码下载] 速战速决 (6) - PHP: 获取 http 请求数据, 获取 get 数据 和 post 数据, json 字符串与对象之间的相互转换 作者:webabcd 介绍速战速决 之 PHP ...

  2. json字符串和对象的相互转化

    json在代码中是经常用到的,在此总结一下json字符串和对象及数组之间的相互转化: 1.javascript函数方式: <1> JSON.stringify :把一个对象转换成json字 ...

  3. js在前端json字符串和对象互相转化

    js在前端json字符串和对象互相转化 //对象转json串 注意:参数必须是对象,数组不起作用,对象格式{'0'=>'a'} JSON.stringify( arr ); //json字符串转 ...

  4. 小程序json字符串转为对象

    小程序里json字符串转为对象使用JSON.parse()方法转变无效, 看报错提示有单引号“ ' ” 因为单引号而无效, 将单引号全改双引号即可. 报错如下: VM11050:1 thirdScri ...

  5. js中json字符串与对象的转换及是否为空

    1.json对象(数组)转字符串 var b=[ { "CategoryName" : "Beverages", "ProductName" ...

  6. 为什么使用eval()将json字符串转换为对象要多加一个小括号

    使用eval()将json字符串转换为对象要多加一个小括号: 关于eval()函数的具体用法这里就不多介绍了,具体可以参阅javascript的eval()方法一章节,下面就介绍一下为什么使用eval ...

  7. java json字符串和对象互转

    /** * Created by admin on 2017/7/26. */ public class NewPost { private String title; private String ...

  8. Google Gson实现JSON字符串和对象之间相互转换

    User实体类 package com.test.json; /** * User 实体类 */ public class User { private String name; private St ...

  9. 后台对象转JSON字符串传到前台,前台JSON字符串转对象绑定标签赋值

    /// <summary> /// 创建换货单-自动获取对应的数据(后端) /// </summary> [HttpGet] public ActionResult GetPr ...

  10. JSON字符串和对象 的转换

    一  通过eval() 函数可以将JSON字符串转化为对象 var obj = eval('(' + str + ')'); 或者 var obj = str.parseJSON(); //由JSON ...

随机推荐

  1. JavaScript中this的用法详解

    JavaScript中this的用法详解 最近,跟身边学前端的朋友了解,有很多人对函数中的this的用法和指向问题比较模糊,这里写一篇博客跟大家一起探讨一下this的用法和指向性问题. 1定义 thi ...

  2. HNOI 2016 地图

    [题目描述] Hoshizora Rin是个特别好动的少女. 一天Rin来到了一个遥远的都市.这个都市有N个建筑,编号从1到N,其中市中心编号为1,这个都市有M条双向通行的街道,每条街道连接着两个建筑 ...

  3. vector基础

    //STL基础 //容器 //vector #include "iostream" #include "cstdio" #include "vecto ...

  4. Beagleboneblack的MLO文件干了些啥

    Beagleboneblack在启动linux之前还有三个启动阶段: ROM code  -->  MLO  -->  u-boot --> kernel 先看看ROM code干了 ...

  5. asp.net SimpleImpersonation使用身份模拟访问局域网共享目录

    mvc中默认账户的权限很低,缺省情况下,ASP.NET应用程序以本机的ASPNET帐号运行,该帐号属于普通用户组,权限受到一定的限制,以保障ASP.NET应用程序运行的安全.但是有时需要某个ASP.N ...

  6. Java 必看的 Spring 知识汇总

    Spring框架是由于软件开发的复杂性而创建的.Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情.然而,Spring的用途不仅仅限于服务器端的开发.从简单性.可测试性和松耦 ...

  7. 【BZOJ4817】【SDOI2017】树点涂色 [LCT][线段树]

    树点涂色 Time Limit: 10 Sec  Memory Limit: 128 MB[Submit][Status][Discuss] Description Bob有一棵n个点的有根树,其中1 ...

  8. 爬虫--requests讲解

    什么是requests? Requests是用Python语言编写,基于urllib,采用Apache2 Licensed 开源协议的HTTP库.它比urllib更加方便,可以节约我们大量的工作,完全 ...

  9. 子div设置margin-top使得父div也跟着向下移动

    之前在写网页的时候,发现一个小问题,就是子div设置margin-top的时候,父的div也会跟着向下移动.我用代码和图描述一下问题: <span style="font-size:1 ...

  10. css3动画总结