`
youyu4
  • 浏览: 424812 次
社区版块
存档分类
最新评论

2. json和javaScript对象的相互转换

    博客分类:
  • json
 
阅读更多

JSON 文本格式在语法上与创建 JavaScript 对象的代码相同。

由于这种相似性,无需解析器,JavaScript 程序能够使用内建的 eval() 函数,用 JSON 数据来生成原生的 JavaScript 对象。

 

1. json转javaScript对象

 

    var txt = '{ "employees" : [' +  
    '{ "firstName":"John" , "lastName":"Doe" },' +  
    '{ "firstName":"Anna" , "lastName":"Smith" },' +  
    '{ "firstName":"Peter" , "lastName":"Jones" } ]}';  
      
    var obj = eval ("(" + txt + ")");  
      
    console.log(obj.employees[1].firstName);  

    使用eval()函数时,必须为传入的JSON数据参数添加括号'()',否则会报语法错误。但eval()的问题在于,除了可以解析JSON数据,也可 以用于执行JavaScript脚本片段,这就会带来潜在的安全问题。

 

 

 

    JSON提供了专门的JSON Parser来实现只用于解析JSON数据,不会执行scripts脚本,而且速度更快。如下:

obj = JSON.parse(txt);

 

    在现在的浏览器中,如IE8, Firefox3.5, Chrome等以上版本,都提供了原生JSON解析器的支持,而且也是ECMAScript (JavaScript)的最新标准。因此,JSON Parser可以在JavaScript代码中是直接调用。

 

 

 

2. javaScript对象转json

var txt = JSON.stringify(obj); 

    使用JSON.strigify()函数,将Javascript对象转换为JSON文本数据。

 

    示例:

    <!DOCTYPE html>  
    <html>  
    <body>  
    <h2>Create Object from JSON String</h2>  
    <p>  
    First Name: <span id="fname"></span><br>   
    Last Name: <span id="lname"></span><br>   
    </p>   
    <script>  
    var txt = '{"employees":[' +  
    '{"firstName":"John","lastName":"Doe" },' +  
    '{"firstName":"Anna","lastName":"Smith" },' +  
    '{"firstName":"Peter","lastName":"Jones" }]}';  
      
    obj = JSON.parse(txt);  
      
    document.getElementById("fname").innerHTML=obj.employees[2].firstName   
    document.getElementById("lname").innerHTML=obj.employees[2].lastName   
      
    alert("JSON Data: \n" + JSON.stringify(obj));  
    </script>  
    </body>  
    </html>  

 

 

分享到:
评论

相关推荐

    Json、Webservice、Jquery、Ajax

    版本号:v1.0 创建人:王国胜 版本创建日期:2011-03-30 相关知识点说明:此测试程序包含Json、Webservice、... JsonAndDateTable.cs Json与DataTable相互转换类 Default.aspx Json、Webservice、Jquery、Ajax测试页

    JSON字符串和JSON对象相互转化实例详解

    本文实例讲述了JSON字符串和JSON对象相互转化的方法。分享给大家供大家参考,具体如下: 将json字符串转换为json对象的方法。在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,...

    javascript中JSON对象与JSON字符串相互转换实例

    本文实例讲述了javascript中JSON对象与JSON字符串相互转换实现方法。分享给大家供大家参考。具体如下: [removed] // 根据JSON对象的属性的名称获取属性的值 var jsonObj = { name: "jxqlovejava" }; // JSON对象 ...

    C#实现String类型和json之间的相互转换功能示例

    本文实例讲述了C#实现String类型和json之间的相互转换功能。分享给大家供大家参考,具体如下: ////Donet2.0 需要添加引用 // 从一个对象信息生成Json串 public static string ObjectToJson(object obj) { return ...

    JavaScript中json对象和string对象之间相互转化

    json对象 代码如下: var json = {aa:true,bb:true}; var json1 = {aa:’b’,bb:{cc:true,dd:true}}; 1:js操作json对象 代码如下: for(var item in json){ alert&#40;... //改变json对象的值 } 2:json对象转化为

    说说如何利用 Python 实现 JSON 与 Python 对象之间的相互转换

    JSON (JavaScript Object Notation)是 JavaScript 程序编写数据结构的原生...要将包含 JSON 数据的字符串转换为 Python 对象,可以把它传递给 json.loads() 函数,loads 的意思是 load string。 import json import l

    详解JavaScript中js对象与JSON格式字符串的相互转换

    本篇文章主要介绍了JavaScript中js对象与JSON格式字符串的相互转换,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

    JSON字符串和对象相互转换实例分析

    主要介绍了JSON字符串和对象相互转换的方法,结合实例形式分析了json格式数据的转换方法,涉及javascript正则与字符串操作的相关技巧,需要的朋友可以参考下

    vdom-as-json:将虚拟对象与JSON相互转换(未维护)

    将对象与JSON相互转换。 设计用于在服务器或Web Worker中生成虚拟节点,然后将其发送到客户端。 这个库可以序列化节点和补丁,但是由于底层的VirtualPatch结构,补丁JSON有点大。 有关更有效的补丁程序序列化算法...

    JsonMe轻量级JSON映射类库源码

    从表面看来,目前用于某个对象与JSON格式之间相互转化的解决方案已经有了许多种,例如在.NET平台上,我们可以使用ASP.NET AJAX中引入的JavaScriptSerializer,WCF中引入的DataContractJsonSerializer,亦或是Json...

    c#和Javascript操作同一json对象的实现代码

    以下是一个泛型列表对象 List&lt;TrainingImplement&gt; ,转为json后,客户端和服务端如何操作 1、json对象与C#泛型相互转换代码 代码如下: //将json数据转换为泛型 public static T ConvertByteDataToObject(string ...

    实例详解JSON数据格式及json格式数据域字符串相互转换

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。 基础结构 JSON建构于两种...

    aoot:在数据格式(例如CSV,TSV,XML和JSON)之间来回转换对象数组

    将对象数组与数据格式JSON,CSV,TSV,XML和YAML相互转换。 安装 npm install aoot --save 用法 var aoot = require ( 'aoot' ) // JSON to CSV var csv = aoot . csv ( json ) // JSON to TSV var tsv = aoot . ...

    js和json的区别与联系,如何相互转换

    js和json的关系与区别 js全称为javascript JavaScript json全称为JavaScript Object Notation 写一下自己的理解: js是Object是类型的,json是string类型的,由于HTTP协议只能传输文本类型的数据,所以就出现了json...

    如何在JS中实现相互转换XML和JSON

    下面先是跟大家分别介绍了JSON与XML以及它们的区别比较,后又分享关于JavaScript实现XML与JSON互转例子,希望这些例子能给你带来帮助。

    conv:JSON-stat命令行转换工具

    JSON-stat命令行转换工具包含用于与进行相互转换的命令行工具。 它们支持不同的JSON版本,CSV(包括 )和 。 它们建立在和。 安装 npm install -g jsonstat-conv 在“页面中有更多信息。 可用命令 将CSV转换为JSON-...

Global site tag (gtag.js) - Google Analytics