`
kstgjfk403
  • 浏览: 30757 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ECMASript5 JSON对象和JS对象转换

阅读更多

JSON 格式数据经过解析之后,可以直接当成 ECMAScript 中的对象来使用。在使用 JSON 格式时的一个重要问题是如何在 ECMAScript 中的对象与文本形式之间进行互相转换。从服务器端通过 HTTP 协议获取的 JSON 文本需要经过解析之后,才能在 ECMAScript 代码中来使用;当需要向服务器端发送数据时,需要先把 ECMAScript 中的对象转换成文本格式。在 ECMAScript 规范第三版中并没有对 JSON 格式数据的转换进行规范,大多数程序都依靠 JavaScript 框架来提供相关的支持。

ECMAScript 规范第五版提供了2个处理JSON对象和js对象相互转换的方法:
JSON.parse(): 将JSON 文本转换成相应的对象。
例如:
var jsonStr = '{"a":1, "b":2, "c":3}';
JSON.parse(jsonStr); //不使用第二个参数:返回一个对象

JSON.parse(jsonStr, function(key, value) {
    return typeof value === 'number' ? value * 2 : value;
}); //函数做为第二个参数,可以有过滤效果。 结果为 {a:2, b:4, c:6}

 JSON.parse(jsonStr, function(key, value) {
    return typeof value === 'number' && value % 2 === 0 ? undefined : value;
 }); //过滤结果为undefined的不会出现在结果中。 结果为 {a:1, b:3}

 JSON.stringify(a,b,c):将 ECMAScript 中的对象转换成 JSON 文本:
 a: 待转换的对象,
 b: 可以为数组或函数
 c: 控制结果中行的缩进,一般为小于10的值
例如:
var user = {
    name : 'Alex',
    password : 'password',
    email : 'alex@example.org'
 };

 JSON.stringify(user); //转换为对象
 JSON.stringify(user, ['name','password']); //只获取数组中出现属性, 输出结果为“{"name":"Alex","password" : "password"}”
 JSON.stringify(user, function(key, value) {
    if (key === 'email') {
        return '******';
    }
    if (key === 'password') {
        return undefined;
    }
    return value;
 });  //undefined不会出现在结果中, 输出结果为“{"name":"Alex","email":"******"}”
 JSON.stringify(user, null, 4); //结果缩进4个空格

分享到:
评论

相关推荐

    JS中Json对象

    ### JS中Json对象 #### JSON概述 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。JSON是基于JavaScript的一个子集,采用完全独立于编程语言的文本...

    javascript对象转换成json

    在JavaScript中,对象转换成JSON(JavaScript Object Notation)是一种常见的数据交换格式,它轻量级、易读、易写,被广泛应用于Web应用程序之间传递数据。JSON格式是基于JavaScript的一个子集,但它并不是...

    json2.js 字符串转转json对象工具

    总的来说,json2.js是解决JSON处理兼容性问题的一个工具,它提供了一种安全且标准化的方式来在JavaScript中进行JSON字符串与对象之间的转换,尤其对于那些不支持原生JSON操作的老版本浏览器而言。

    js中的json对象和字符串之间的转化

    2. **字符串与JSON对象之间的转化**:JavaScript提供了两个内置函数来实现这种转化:`JSON.stringify()`用于将JavaScript对象转换为JSON字符串,`JSON.parse()`用于将JSON字符串转换回JavaScript对象。 **描述中的...

    使用JQuery实现从JSON对象转换为form提交数据

    首先,JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它基于JavaScript的一个子集,易于人阅读和编写,同时也易于机器解析和生成。在前端应用中,我们经常从服务器获取JSON格式的数据,然后在...

    json转换jsonschema

    在JavaScript开发中,有时我们需要将JSON对象转换为JSON Schema,以便对数据进行验证。这在处理用户输入、API交互或者存储复杂数据结构时非常有用。`jsonToSchema`项目可能就是一个工具或库,用于帮助开发者实现这个...

    json转对象 json转对象json转对象 json转对象 json转对象 json转对象

    json转对象json转对象json转对象json转对象json转对象json转对象json转对象json转对象json转对象json转对象json转对象json转对象json转对象json转对象json转对象json转对象json转对象json转对象json转对象json转对象...

    js将excel转化成json 对象

    5. **转换为JSON对象**:二维数组可以很容易地转换为JSON对象。遍历数组,每行数据作为JSON对象的一个属性,属性名为单元格的列名,属性值为单元格的值。可以使用`Array.prototype.map()`和`Object.fromEntries()`等...

    feature转化为Json对象

    "Feature 转化为 Json 对象" 在 GIS 应用中,Feature 对象是非常重要的一种数据结构,用于描述空间要素的属性和几何信息。但是在实际应用中,我们需要将 Feature 对象转换为 Json 对象,以便在客户端进行处理和展示...

    将数组转换成JSON对象

    在IT领域,将数组转换为JSON对象是一项常见且重要的技能,尤其在前后端数据交互、存储和传输数据时。从给定的文件标题和描述中,我们可以提炼出以下几个关键知识点: ### 1. JSON(JavaScript Object Notation)...

    form数据与json对象的互相转换(完整版)

    form数据与json对象的互相转换(完整版) * 将web Form 的数据转化成json字符串 * 将json对象的值解析后填入web Form 在AJAX开发中这是关键技术: 1、将form中的数据利用本工具转换成json格式的字符串,再通过ajax传...

    asp输出json对象实例

    5. 客户端通过AJAX请求获取JSON数据,然后使用JavaScript的`JSON.parse()`方法解析为JavaScript对象。 通过这个实例,你可以学习到如何在ASP环境中处理JSON数据,以及如何利用AJAX进行前后端的数据交互。这在现代...

    asp字符串转json对象类

    通过阅读这两个文件,我们可以更深入地了解这个特定实现的工作原理,包括如何处理JSON的不同数据类型(如字符串、数字、布尔值、null、数组和对象)以及如何构建自定义的访问接口。 在实际应用中,这样的自定义JSON...

    json字符串转换c++类对象

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。本文将深入探讨如何将JSON字符串转换为C++类对象,主要涉及以下知识点: 1. JSON库的选择:C++标准...

    Json对象与json字符串互相转换处理工具

    Json对象与json字符串互相转换处理工具

    JSON--List集合转换成JSON对象详解

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。JSON作为数据交换格式,因其简洁、清晰的特点,在Web应用中得到了广泛的应用。而List集合是一种常见...

    json对象转换兼容js

    在JavaScript中,我们通常使用`JSON.stringify()`方法将JavaScript对象转换为JSON字符串,以及使用`JSON.parse()`方法将JSON字符串解析回JavaScript对象。 ### JSON.stringify() `JSON.stringify()`是JavaScript中...

    json格式与java类对象相互转换

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于前后端交互,而Java作为后端开发的主要语言,常常需要将JSON格式的数据与Java类对象进行相互转换,以便于数据的处理和传输。Jackson库是...

    Delphi中JSon SuperObject 使用数据集与JSON对象互转.docx

    在 Delphi 中,JSON 对象的格式可以使用 COLS 和 DATA 两个节点来表示。COLS 节点表示字段信息,而 DATA 节点表示数据信息。 例如,以下是一个 JSON 对象的示例: ```json { "Cols": [ { "JsonType": "integer...

    经典ASP读取JSON字符串/生成JSON对象,数组对象等。

    JSON(JavaScript Object Notation)是数据交换格式,因其轻量级和易于阅读而被广泛应用。这篇关于“经典ASP读取JSON字符串/生成JSON对象,数组对象等”的知识将详细介绍如何在ASP环境中处理JSON数据。 1. **JSON...

Global site tag (gtag.js) - Google Analytics