JSON 文本格式在语法上与创建 JavaScript 对象的代码相同。 由于这种相似性,无需解析器,JavaScript 程序能够使用内建的 eval() 函数,用 JSON 数据来生成原生的 JavaScript 对象。

JSON                                                                                                                      语则:

数据在 名称/值 对仲 数据由逗号分隔 花括号保存对象 方括号保存数组

JSON 名称/值 对介绍

"name":"张飞", "age":23

Json的值可以是:

数字(整数或浮点数) 字符串(要包括在双引号中) 逻辑值(true或false) 数组(在方括号中) 对象(在花括号中)

Json转javascript对象的方法为:

eval("(" + str + ")");

代码示例:

 
<html>
<head>
<title>Json测试</title>
<script src="/Scripts/jquery-1.7.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
//基本上,Json返回的要么是对象,要么是数组,如果单纯返回一个字符串,那么就没有必要用Json了,因此
//Json基本就下面这些可,不过要注意双引号
var str0 = "{employees:'测试'}";
var obj0 = eval("(" + str0 + ")");
alert(obj0.employees); //输出测试 var str = "{name:'张三',Age:21}";
var obj = eval("(" + str + ")");
document.write(obj.name + obj.Age); //输出 张三21
alert(obj.name); //别看下面那段Json长,其实是一个对象,属性employees的值是一个对象数组。和上面的相比,只是name:张三 中的"张三"字符串 变成了对象数组而已
var str2 = '{ "employees" : [' + '{ "firstName":"Bill" , "lastName":"Gates" },' + '{ "firstName":"George" , "lastName":"Bush" },' + '{ "firstName":"Thomas" , "lastName":"Carter" } ]}';
var obj2 = eval("(" + str2 + ")");
alert(obj2.employees[0].firstName); //弹出 Bill var str3 = "[1,2,3,4,5,6]"; //json 数组
var obj3 = eval("(" + str3 + ")"); //输出 2
alert(obj3[1]);
</script>
</head>
<body>
<div id="div1">
</div>
</body>
</html>
 

Json与JavaScript对象转换

  JSON转javascript对象

 
//Json转对象1
function JsonToObject(str) {
return eval("(" + str + ")");
} //Json转对象2
function strToJson(str){
var json = (new Function("return " + str))();
return json;
} //Json转对象3 jQuery工具函数
$.parseJSON()
 

  javascript对象转JSON

 
//javascript对象转Json
function ObjectToJson(o) {
var arr = [];
var fmt = function(s) {
if (typeof s == 'object' && s != null) return json2str(s);
return /^(string|number)$/.test(typeof s) ? "'" + s + "'" : s;
}
for (var i in o) arr.push("'" + i + "':" + fmt(o[i]));
return '{' + arr.join(',') + '}';
}

Json之语法的更多相关文章

  1. Json的语法及使用方法

    Json的语法及使用方法 Json(JavaScript Object Notation)对象表示标识,是一种轻量级的数据交换语言,比XML更容易解析,独立于语言和平台. 语法规则: 对象用{}保存 ...

  2. JSON.stringify 语法实例讲解+easyui data-options属性+expires【申明:来源于网络】

    JSON.stringify 语法实例讲解+easyui data-options属性+expires[申明:来源于网络] JSON.stringify 语法实例讲解:http://www.jb51. ...

  3. JSON字符串语法

    JSON 语法是 JavaScript 对象表示语法的子集. 数据在键/值对中展示, 多个数据由逗号分隔, 花括号保存一个对象, 方括号保存一个数组 JSON具有以下形式: 1. 对象(object) ...

  4. 【js】JSON.stringify 语法实例讲解

    语法:  JSON.stringify(value [, replacer] [, space]) value:是必选字段.就是你输入的对象,比如数组,类等. replacer:这个是可选的.它又分为 ...

  5. JSON.stringify语法解析(自己留存)

    语法: JSON.stringify(value [, replacer] [, space]) value:是必选字段.就是你输入的对象,比如数组,类等. replacer:这个是可选的.它又分为2 ...

  6. JSON.stringify 语法实例讲解

    语法:  JSON.stringify(value [, replacer] [, space]) value:是必选字段.就是你输入的对象,比如数组,类等. replacer:这个是可选的.它又分为 ...

  7. [转]JSON.stringify 语法实例讲解

    原文地址:http://www.jb51.net/article/29893.htm 作用:这个函数的作用主要是为了系列化对象的. 可能有些人对系列化这个词过敏,我的理解很简单.就是说把原来是对象的类 ...

  8. JSON 基本语法

    JSON:JavaScript 对象表示法(JavaScript Object Notation). JSON 是存储和交换文本信息的语法.类似 XML. JSON 比 XML 更小.更快,更易解析. ...

  9. JSON.stringify 语法实例讲解 字符串

    语法: JSON.stringify(value [, replacer] [, space]) var student = new Object(); student.name = "La ...

  10. Json之语法,格式

    JSON 文本格式在语法上与创建 JavaScript 对象的代码相同.由于这种相似性,无需解析器,JavaScript 程序能够使用内建的 eval() 函数,用 JSON 数据来生成原生的 Jav ...

随机推荐

  1. windows下面使用nginx配置web注意问题

    1.路径一定要用两个反斜杠进行转义,如果只用单个反斜杠,遇到\n就识别不到路径了,例如下图中的\news中包含\n

  2. linux下批量kill进程的方法

    --kill某个用户下的所有进程(用户为test)--pkill  # pkill -u test--killall  # killall -u test--ps  # ps -ef | grep t ...

  3. HeaderExchangeClient

    HeaderExchangeClient 注释是DefaultMessageClient,类中定义了心跳定时器HeaderExchangeChannel 发送请求HeaderExchangeHandl ...

  4. Python3 urllib抓取指定URL的内容

    最近在研究Python,熟悉了一些基本语法和模块的使用:现在打算研究一下Python爬虫.学习主要是通过别人的博客和自己下载的一下文档进行的,自己也写一下博客作为记录学习自己过程吧.Python代码写 ...

  5. 【笔记】《深入浅出MFC》第5章 总观Application Framework

    凝聚性强.组织化强的类库就是Application Framework.一组合作无间的对象,彼此藉消息的流动而沟通,并且互相调用对方的函数以求完成任务,这就是Application Framework ...

  6. [翻译]HTTP: Let’s GET It On!

    原文地址:HTTP: Let’s GET It On! 简介 几周之前,我们了解到HTTP是一个应用级的协议.现在是时候探索我们应该如何在客户端和服务端的通信之间使用这个协议了. 从网络上获取资源 记 ...

  7. 20165202 Mypwd

    实现mypwd(选做,加分) 1 学习pwd命令 2 研究pwd实现需要的系统调用(man -k; grep),写出伪代码 3 实现mypwd 4 测试mypwd 提交过程博客的链接 实现过程 使用m ...

  8. json数组和json字符串转换成map解析

    package demo; import java.util.List;import java.util.Map;import java.util.Map.Entry; import net.sf.j ...

  9. 彩信的在android里是如何存储的 Android MMS模块数据存取

    数据表MMS模块总共包含17张表:addr.android_metadata.attachments.canonical_addresses.drm.part.pdu.pending_msgs.rat ...

  10. 内网dns劫持

    进行内网的dns劫持呢 ---> 我们需要用到ettercap 和ettercap内置的工具dns_spoof 1.我们需要开启ip转发 echo >/proc/sys/net/ipv4/ ...