简单记录一下jquery里面的JSON.parse()和JSON.stringify()函数,和js中的eval()函数的用法

1,JSON.parse 函数(常用)

作用:将 JavaScript 对象表示法 (JSON) 字符串转换为对象。  

语法:JSON.parse(text [reviver])

参数:

  • text    必需。 一个有效的 JSON 字符串。
  • reviver  可选。 一个转换结果的函数。 将为对象的每个成员调用此函数。

返回值:一个对象或数组

例子:

  1. var json = '{"name":"YZ","age":22,"University":"SJZXY"}';
  2. var info = JSON.parse(json);  //解析为JSON对象
  3. document.write(info.name + ' is a student of ' + info.University + ' and he is ' + info.age + " years old."); /infoObject对象

2,JSON.stringify()函数

作用:将 JavaScript 值转换为 JavaScript 对象表示法 (JSON) 字符串

语法:JSON.stringify( value [, replacer] [, space])

参数:

  • value  必需,通常为需要转换的JavaScript值(通常为对象或者数组)
  • replacer  可选,用于转换结果的函数或者数组
  • space  可选。向返回值 JSON 文本添加缩进、空格和换行符以使其更易于读取。

返回值:一个包含JSON文本的字符串

example:

  1. var info = {name:"YZ",age:22,University:"SJZXY"};
  2. var json = JSON.stringify(info); //转换为JSON字符串
    document.write(json); //output为{"name":"GDT","age":23,"University":"GDUT"}

(3)eval()函数

作用:eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。

语法:eval(string)

参数:

  • string  必需,要计算的字符串,其中含有要计算的 JavaScript 表达式或要执行的语句。

返回值:返回计算string的值,如果有的话 (没有则不做任何改变返回)

example:

  1. eval("x=11;y=2;document.write(x*y)"); //output为22
  2. document.write(eval("2+2"));  //output为4
  3. var x=10;
  4. document.write(eval(x+17));  //output为27
  1. eval()解析字符串的格式
  1. alert(eval('('+'{}'+')')) 但是eval()是不安全的 容易在里面执行危险代码
    例子:
  1. var str2 = '{"a": (function(){alert("I can do something bad!");})()}';
    eval('('+str2+')');
  1. 执行危险的代码 不安全 但是json.parse() 就完全克服这个难题了,所以实际中用的少
  2.  
  3. --引用网络资料 如有侵权立删
  4.  

Json常用的转换的更多相关文章

  1. 转 JSON与XML转换

    这两天处理模块的联调工作,在json与XML转换中出现了一些奇怪的问题,仔细究来,实为对org.json.*包知之太少.晚上baidu.google一下,找出了问题出现的原因.在模块中,使用了两个方法 ...

  2. Java对象与Json字符串的转换

    Java对象与Json字符串的转换 JSON是一种轻量级的数据交换格式,常用于前后端的数据交流 后端 : 前端 Java对象 > JsonString Java对象 < jsonStrin ...

  3. iOS 字典或者数组和JSON串的转换

    在和服务器交互过程中,会iOS 字典或者数组和JSON串的转换,具体互换如下: // 将字典或者数组转化为JSON串 + (NSData *)toJSONData:(id)theData { NSEr ...

  4. Newtonsoft.Json 把对象转换成json字符串

    var resultJson = new { records = rowCount, page = pageindex, //总页数=(总页数+页大小-1)/页大小 total = (rowCount ...

  5. Json时间格式转换问题

    很多时候在数据库中取出数据,需要用Json来接收,但是接受出来的数据竟然是:/Date(1386040883000+0800)/ 这种格式. 这个时候就需要将Json格式,转换成Javascript格 ...

  6. JSON 与List转换类封装

    json与list转换小结: import java.util.ArrayList; import java.util.List; import com.google.gson.Gson; impor ...

  7. Android项目开发全程(四)-- 将网络返回的json字符串轻松转换成listview列表

    前面几篇博文介绍了从项目搭建到获取网络字符串,对一个项目的前期整体工作进行了详细的介绍,本篇接着上篇介绍一下怎么样优雅将网络返回的json字符串轻松转换成listview列表. 先上图,看一下效果. ...

  8. 使用json常用到的包有以下六个

    使用json常用到的包有以下六个 1. commons-logging-1.0.4.jar 2. commons-lang-2.3.jar 3. commons-collections-3.2.jar ...

  9. Unity 数据Json格式的转换

    把对象转换为字节序列的过程称为对象的序列化. 把字节序列化恢复为对象过程称为对象的反序列化. JSON格式的转换,是一大神给我说的,让我拿来存储数据库时对一些数据的处理,感觉特别好用.但是我并没有深入 ...

随机推荐

  1. jdbc中的细节

    JDBC 架构:JDBC 的 API 支持两层和三层处理模式进行数据库的访问,但是一般的JDBC架构由两层处理模式组成.(1)JDBC API:提供了应用程序对 JDBC 管理器的连接(2)JDBC ...

  2. 领域驱动设计(DDD)实现之路

    2004年,当Eric Evans的那本<领域驱动设计——软件核心复杂性应对之道>(后文简称<领域驱动设计>)出版时,我还在念高中,接触到领域驱动设计(DDD)已经是8年后的事 ...

  3. 重构第21天 合并继承 (Collapse Hierarchy)

    理解:本文中的”合并继承”是指如果子类的属性和方法也适合于基类,那么就可以移除子类,从而减少依赖关系. 详解:上一篇我们讲到“提取子类”重构是指当基类中的一个责任不被所有的子类所需要时,将这些责任提取 ...

  4. 重构第18天 用条件语句来代替异常(Replace exception with conditional)

    理解:本文中的“使用条件判断代替异常”是指把没有必要使用异常做判断的条件尽量改为条件判断. 详解: 重构前代码: public class Microwave { private IMicrowave ...

  5. 【转】Aspose.Cells读取excel文件

    Aspose是一个很强大的控件,可以用来操作word,excel,ppt等文件,用这个控件来导入.导出数据非常方便.其中Aspose.Cells就是用来操作Excel的,功能有很多.我所用的是最基本的 ...

  6. 从Android系统出发,分析Android控件构架

    从Android系统出发,分析Android控件构架 Android中所有的控件追溯到根源,就是View 和ViewGroup,相信这个大家都知道,但是大家也许会不太清楚它们之间的具体关系是什么,在A ...

  7. TSQL生成Combguid

    Nhibernate实现combguid /// <summary> /// Generate a new <see cref="Guid"/> using ...

  8. chenxi的js学习笔记

    1.本文主体源自:http://www.cnblogs.com/coco1s/p/4029708.html,有兴趣的可以直接去那里看,也可以看看我整理加拓展的. 2.js是一门什么样的语言及特点? j ...

  9. swift学习笔记之-自动引用计数

    //自动引用计数 import UIKit /*自动引用计数(Automatic Reference Counting) 防止循环强引用 Swift 使用自动引用计数(ARC)机制来跟踪和管理你的应用 ...

  10. ASP.NET检测到有潜在危险的 Request.Form 值解决方案汇总

    ASP.NET检测到有潜在危险的 Request.Form 值解决方案汇总 当我们在网站中使用CKEditor等富文本编辑器时,大多都会遇到这样的到警告 这是因为ASP.NET默认开启对页面提交内容的 ...