- 浏览: 537037 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (119)
- java总结 (43)
- Spring (2)
- 反编译工具 (1)
- hibernate (1)
- Tomcat (1)
- WebLogic (2)
- 随笔 (4)
- Word问题小记 (2)
- web前端 (26)
- Oracle (10)
- DOS (1)
- 面试笔试 (3)
- Servlet (1)
- jQuery (1)
- Linux/Unix (2)
- JSTL (1)
- struts2 (2)
- JSON (2)
- Velocity (0)
- 生活 (3)
- MyEclipse使用小结 (1)
- 操作系统 (2)
- jqgrid (1)
- ajax-dwr (1)
- javascript (18)
- dreamweaver (2)
- html (10)
- css (5)
- 正则表达式 (1)
- IO (3)
最新评论
-
a363722188:
幽默者 写道老兄,Collections.copy(dest1 ...
由java中深度复制一伸出Collections.copy的使用 -
幽默者:
老兄,Collections.copy(dest1, src1 ...
由java中深度复制一伸出Collections.copy的使用 -
raymao:
java 中 split 是正则表达式
java 和 javascript split 的区别! -
413899327:
面试前端javascript
阿里电话面试 -
yzsunlight:
你面试前台UI?
阿里电话面试
什么是JSON
JSON(JavaScript Object Notation)是一种优美的JavaScript对象创建方法。JSON也是一种轻量级数据交换格式。JSON非常易于人阅读与编写,同时利于机器解析与生成。JSON是在AJAX中代替XML交换数据的更佳方案。
JSON格式与语法
var jsonobject=
{
//对象内的属性语法(属性名与属性值是成对出现的)
propertyname:value,
//对象内的函数语法(函数名与函数内容是成对出现的)
functionname:function(){...;}
};
jsonobject -- JSON对象名称
propertyname -- 属性名称
functionname -- 函数名称
一对大括号,括起多个"名称/值"的集合
JSON使用"名称/值"对的集合表示,也可以被理解为数组(Array)
属性名或函数名可以是任意字符串,甚至是空字符串(见下面示例)
逗号用于隔开每对"名称/值"对
字符串格式json转化成json对象有3种方式:
1:js下用eval生成JSON对象 ---通过eval() 函数可以将JSON字符串转化为对象。
2:使用函数方式
3:使用js的json库或者jQuery提供的js库 --- 如果基于安全的考虑的话,最好是使用一个 JSON 解析器。 一个 JSON 解析器将只接受 JSON 文本。所以是更安全的。
写成一个方法:
===========================================================================
3、jQuery
JSON(JavaScript Object Notation)是一种优美的JavaScript对象创建方法。JSON也是一种轻量级数据交换格式。JSON非常易于人阅读与编写,同时利于机器解析与生成。JSON是在AJAX中代替XML交换数据的更佳方案。
JSON格式与语法
var jsonobject=
{
//对象内的属性语法(属性名与属性值是成对出现的)
propertyname:value,
//对象内的函数语法(函数名与函数内容是成对出现的)
functionname:function(){...;}
};
jsonobject -- JSON对象名称
propertyname -- 属性名称
functionname -- 函数名称
一对大括号,括起多个"名称/值"的集合
JSON使用"名称/值"对的集合表示,也可以被理解为数组(Array)
属性名或函数名可以是任意字符串,甚至是空字符串(见下面示例)
逗号用于隔开每对"名称/值"对
字符串格式json转化成json对象有3种方式:
1:js下用eval生成JSON对象 ---通过eval() 函数可以将JSON字符串转化为对象。
2:使用函数方式
3:使用js的json库或者jQuery提供的js库 --- 如果基于安全的考虑的话,最好是使用一个 JSON 解析器。 一个 JSON 解析器将只接受 JSON 文本。所以是更安全的。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>字符串格式json如何转化成json对象</title> <style type="text/css"></style> <script type="text/javascript"> //方法1:js下用eval生成JSON对象 function strJsonToJsonByEval(jsonData){ var json = eval("(" + jsonData +")");//转换为json对象 return json; } //方法2:使用函数方式 function strJsonToJsonByFunction(jsonData){ return ( new Function("return "+jsonData) )(); } window.onload = function() { var jsonData = " {name1:'1',value1:'a',name2:'2',value2:'b' }"; var json1 = strJsonToJsonByFunction(jsonData); alert("Function || " + json1.name1 + " --- " + json1.name2); var json2 = eval("( {name1:'1',value1:'a',name2:'2',value2:'b' } )"); alert("eval(\"(\"jsonData\")\") || " + json2.value1 + " --- " + json2.value2); var json3 = strJsonToJsonByEval(jsonData); alert("Eval || " + json3.value1 + " --- " + json3.value2); } </script> </head> <body> </body> </html>
写成一个方法:
/* * @method 将拼接好字符串格式的json 转成json对象 * @param jsonData param fomart: * var jsonData = "{name1:'1',value1:'a',name2:'2',value2:'b' }"; * @return json; */ function strJsonToJson(jsonData){ //方法1:js下用eval生成JSON对象 //var json = eval("(" + jsonData +")");//转换为json对象 //return json; //方法2:使用函数方式 return ( new Function("return "+jsonData) )(); }
===========================================================================
3、jQuery
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>jQuery插件方式解析json</title> <script type="text/javascript" src="jquery-1.9.1.js"></script> <script type="text/javascript" src="jquery.json-2.4.js"></script> <script type="text/javascript"> /* jquery-1.9.1.js 提供的方法。 jQuery.parseJSON( json ) 返回: Object 接受一个标准格式的 JSON 字符串,并返回解析后的 JavaScript 对象。 传入格式有误的 JSON 字符串可能导致抛出异常。例如,下面这些 JSON 字符串格式都不对: {test: 1} (test 没有使用双引号包裹). {'test': 1} ('test' 用了单引号而不是双引号包裹). 另外,如果你什么都不传入,或者传入空字符串、null、undefined 等,parseJSON 都会返回 null 。如果浏览器原生实现了 JSON.parse, jQuery 则会使用它来解析字符串。 */ var strJson = '{"name":"John"}'; //var strJson = "{name:'John'}";//错误格式,必须严格满足一个标准格式的 JSON 字符串,key--value 都用双引号包裹 var obj = jQuery.parseJSON(strJson); alert( obj.name === "John" ); // true var obj2 = $.parseJSON(strJson); alert( obj2.name ); //John /* jquery.json-2.4.js 提供的方法。 下面的方法在接受一个标准格式的 JSON 字符串 并不是很严格,只要是键值对形式的都可以。 http://code.google.com/p/jquery-json/ toJSON: Serializes a javascript object, number, string, or array into JSON. evalJSON: Converts from JSON to Javascript, quickly, and is trivial. */ //Json Object var json = { plugin: 'jquery-json', version: 2.4 }; //toJSON: Json Object ---> String Json var encoded = $.toJSON( json );// '{"plugin":"jquery-json","version":2.4}' //evalJSON: String Json ---> Json Object var jsonObject = $.evalJSON( encoded ); var name = $.evalJSON( encoded ).plugin;// "jquery-json" var version = $.evalJSON(encoded).version;// 2.4 alert( "toJSON: " + encoded + " ,typeof " + typeof encoded + "\r\n\r\n" + "evalJSON: " + jsonObject + " ,typeof " + typeof(jsonObject) + "\r\n\r\n" + "name= " + name + " , version= " + version ); </script> </head> <body> </body> </html>
发表评论
-
java 和 javascript split 的区别!
2013-09-18 10:52 1652java 和 javascript split 的区别! ... -
javascrip如何创建命名空间
2013-09-18 10:49 1205看代码,废话不多说! <!DOCTYPE ht ... -
阿里电话面试
2013-09-10 22:16 2525今天晚上接到阿里电话面试! 问到的问题大 ... -
setTimeout 和 setInterval最小执行时间问题
2013-09-08 22:43 16767setTimeout 和 setInterval 经常被用 ... -
IE6用setAttribute添加事件无效
2013-09-08 11:51 1433<!DOCTYPE html PUBLIC &q ... -
在IE6下 a标签添加行间onclick事件导致页面跳转失败原因分析
2013-09-08 11:43 3398<!DOCTYPE html PUBLIC & ... -
如何禁用浏览器的后退/刷新,backspace退格键
2013-06-09 13:01 7563在这个页面中加入的JavaScript代码可 用来产生点击前 ... -
javascript阻止事件冒泡和浏览器的默认行为
2013-06-09 09:41 2241在使用javascript编程时会遇到一个问题,就是当你给 ... -
JavaScript中两个等于号和三个等于号之间的区别
2013-06-07 14:59 1814为真的: 0 == 0 、"" == ... -
javascript中一些数据类型以及奇怪的特性
2013-06-07 14:24 1356javascript中一些数据类型以及奇怪的特性。具体情况直接 ... -
javascript中为5种为假的情况测试
2013-05-24 15:42 1282Javascript假的5种情况: Falsy values ... -
javascript中变量声明提升(Hoisting)的理解 ---What is hoisting in Javascript?
2013-05-24 11:24 1403<!DOCTYPE html PUBLIC &quo ... -
添加重置IE outline方法
2013-05-12 23:07 1801css / reset-ie-outline.css ... -
JavaScript中两个等于号和三个等于号之间的区别
2013-05-12 22:41 1193<!DOCTYPE html PUBLIC " ... -
光标充满整个input输入框的方法
2013-03-25 20:11 2866光标充满整个input输入框的方法: 1、不设置行高 --& ... -
javascript的函数参数arguments 并不是数组
2013-03-22 12:34 1493arguments 并不是数组,只是碰巧用数字做索引,以及一个 ... -
弹出层居中问题版1
2013-03-21 22:51 17831、居中弹出层css控制问题版 <!DOCTYPE ... -
隐式块级元素
2013-02-25 14:56 1023学无止境。 我自诩xhtml+css玩的炉火纯青,却发现, ... -
dreamweaver js代码格式化
2013-02-13 13:33 8645官方提供的扩展 javascript source forma ... -
javascript 内存和性能闲聊
2013-01-14 22:25 1187我想问你这样更省内存,所有的aBtn[i].onclick共用 ...
相关推荐
题目中提到的"asp字符串转json对象类"就是这样一个功能,它允许开发者将JSON格式的字符串转换为VBScript可以操作的对象。 在VBScript中,对象的属性通常通过"obj.property"的方式访问,但根据描述,这里的JSON对象...
总的来说,json2.js是解决JSON处理兼容性问题的一个工具,它提供了一种安全且标准化的方式来在JavaScript中进行JSON字符串与对象之间的转换,尤其对于那些不支持原生JSON操作的老版本浏览器而言。
2. **字符串与JSON对象之间的转化**:JavaScript提供了两个内置函数来实现这种转化:`JSON.stringify()`用于将JavaScript对象转换为JSON字符串,`JSON.parse()`用于将JSON字符串转换回JavaScript对象。 **描述中的...
在JavaScript中,可以使用`JSON.parse()`方法将一个JSON格式的字符串转换为JavaScript对象。这个方法接收一个JSON字符串作为参数,返回的是解析后的JavaScript对象。例如: ```javascript let jsonString = '{"name...
在C++编程中,将JSON字符串转换为C++类对象是一项常见的任务,特别是在处理网络通信、数据存储或配置文件时。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析...
在IT行业中,数据交换和存储经常需要在不同的格式之间转换,XML(可扩展标记语言)和JSON(JavaScript对象表示法)就是两种常见的数据格式。XML以其结构化和语义化的特性,广泛应用于Web服务和数据交换,而JSON因其...
在Java编程中,验证字符串是否符合JSON(JavaScript Object Notation)格式是一项常见的任务,尤其是在进行前后端数据交互时。JSON是一种轻量级的数据交换格式,它允许数据以键值对的形式存储,易于人阅读和编写,...
在JavaScript中,对象转换成JSON(JavaScript Object Notation)是一种常见的数据交换格式,它轻量级、易读、易写,被广泛应用于Web应用程序之间传递数据。JSON格式是基于JavaScript的一个子集,但它并不是...
在C#中,我们主要依靠`System.Text.Json`或`Newtonsoft.Json`库(也称为Json.NET)来实现字符串与JSON对象之间的转换。本篇文章将详细探讨如何使用这两种方法进行转换。 首先,让我们关注`System.Text.Json`,这是...
标题中的“使用json-lib将java对象转换成json字符串”指的是在Java编程中,利用json-lib这个库来将Java对象转化为JSON格式的字符串。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于前后端...
在PHP中,将PHP对象转换成JSON(JavaScript Object Notation)字符串是一项常见的任务,尤其是在进行Web开发时,因为JSON是一种轻量级的数据交换格式,它允许服务器向客户端发送数据,并在客户端进行解析。...
"json字符串格式化工具"是针对JSON数据进行美化和整理的工具,主要功能包括将紧凑的JSON字符串转换为易于阅读的格式,添加缩进、换行,以及高亮显示键值对等。这对于开发者调试API接口、查看JSON响应或者理解复杂...
- **字符串到JSON转换**:将普通的字符串转化为标准的JSON格式,自动识别并处理非法字符和格式。 - **格式化JSON**:接收未格式化的JSON字符串,将其转换为具有缩进和换行的易读格式。 - **验证JSON**:检查输入...
在Java开发中,将Java对象转换为JSON字符串或字符串数组是一项常见的任务,特别是在与前端交互、数据存储或者网络传输时。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也...
在进行数据交互时,我们常常需要检查一个字符串是否符合JSON的格式规范,这就是`C语言检测字符串是否为json字符串`这个主题所关注的问题。 C语言本身并不直接支持JSON解析,因此我们需要借助第三方库或者自定义函数...
通过使用如`Gson`这样的库,我们可以轻松地在Java对象和JSON字符串之间进行转换,从而实现数据的有效传输和存储。在实际项目中,务必注意处理可能出现的异常情况,如无效的JSON格式,以及确保数据的安全性。
反之,`JSON.parse()` 用于将JSON字符串转换回JavaScript对象,使得数据可以在JavaScript环境中使用。这就是所谓的反序列化。例如,我们已有如题所示的JSON字符串`jsonString`,可以使用以下代码将其转换为对象: ...
本项目基于`cjson`库,扩展了功能,实现了JSON格式字符串与C结构体之间的自动转化。这种转化能力使得C程序能够更加便捷地处理JSON数据,无需手动解析和构建JSON字符串,提高了开发效率和代码的可读性。 在C语言中,...
4. **转换为JSON字符串**:使用JavaScript内置的`JSON.stringify`方法将构建好的对象转换为JSON字符串。 5. **处理JSON对象**:如果需要在客户端进一步处理JSON数据,可以将其解析为JavaScript对象,使用`JSON....