前言

在数据传输流程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。

js解析json字符串

// JSON字符串
'var str1 = '{ "name": "cxh", "sex": "man" }'; // JSON对象
var str2 = { "name": "cxh", "sex": "man" };

要使用str1,必须要先转化为JSON对象,有以下三种方式:

var obj = eval('(' + str + ')'); //eval来转换JSON字符到Object

var obj = str.parseJSON(); //由JSON字符串转换为JSON对象

var obj = JSON.parse(str); //由JSON字符串转换为JSON对象

然后就可以读取了

Alert(obj.name);

Alert(obj.sex);

除了eval()函数是js自带的之外,其他的几个都来自json.js包。新版本的 JSON 修改了 API,将 JSON.stringify() 和 JSON.parse() 两个都注入到了 Javascript 的内建对象里面,前者变成了 Object.toJSONString(),而后者变成了 String.parseJSON()。如果提示找不到toJSONString()和parseJSON(),说明你的json包版本太低。

JS 对象与JSON之间的转换

JS对象转JSON

方式:JSON.stringify(obj)

var json = {"name":"iphone","price":666}; //创建对象;
var jsonStr = JSON.stringify(json); //转为JSON字符串
console.log(jsonStr); {"name":"iphone","price":666}

JS数组转JSON

//数组转json串
var arr = [1,2,3, { a : 1 } ];
JSON.stringify( arr );

JS对象数组转JSON

//数组转json串
var arr = [1,2,3, { a : 1 } ];
JSON.stringify( arr );

JSON转JS数组

//json字符串转数组
var jsonStr = '[1,2,3,{"a":1}]';
var jsarr=JSON.parse( jsonStr );
alert(jsarr[0]);

JSON转JS对象

var jsonString = '{"bar":"property","baz":3}';
var jsObject = JSON.parse(jsonString); //转换为json对象
alert(jsObject.bar); //取json中的值

js解析json字符串、对象与json之间的转换的更多相关文章

  1. 用jackson包实现json、对象、Map之间的转换

    jackson API的使用 用jackson包实现json.对象.Map之间的转换

  2. 转载-------- JSON 与 对象 、集合 之间的转换 JSON字符串和java对象的互转【json-lib】

    转载--*--*---- 在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级的数据格式比xml效率要高,XML需要很多的标签,这无疑占据了网络流量,J ...

  3. JSON 与 对象 、集合 之间的转换

    JSON字符串和java对象的互转[json-lib]   在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级的数据格式比xml效率要高,XML需要很 ...

  4. 关于JSON 与 对象 、集合 之间的转换

    在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级的数据格式比xml效率要高,XML需要很多的标签,这无疑占据了网络流量,JSON在这方面则做的很好, ...

  5. JSON与对象,集合之间的转换

    https://www.cnblogs.com/xiatc/p/8952739.html

  6. java json数据转List对象的集合-----阿里巴巴插件---及原生json---JSON 与 对象 、集合 之间的转换 JSON字符串和java对象的互转【json-lib】

    List<RunfastFullLess> list=(List<RunfastFullLess>)JSONArray.parseObject(activity.getFull ...

  7. python接口自动化:响应内容中json字符串对象的处理

    实现代码如下: import json #定义一个字典.一个列表.两个字符串({}中必须是双引号) di1={"} di2=[{"}] di3='{"name" ...

  8. json字符串、json对象、数组之间的转换

    json字符串转化成json对象 // jquery的方法 var jsonObj = $.parseJSON(jsonStr) //js 的方法 var jsonObj = JSON.parse(j ...

  9. JSON数组对象和JSON字符串的转化,map和JSON对象之间的转化

    这种用法包括前端和后端: 前端: 1. 转化为JSON对象方便操作 var jsonObj = JSON.parse(str); 得到的是一个json数组对象,可以通过 for (var p in j ...

  10. Java基础97 json插件的使用(java对象和json字符串对象之间的转换)

    1.需要用到的包 2.实例 实体类 people package com.shore.entity; /** * @author DSHORE/2019-4-19 * */ public class ...

随机推荐

  1. JVM实战—2.JVM内存设置与对象分配流转

    大纲 1.JVM内存划分的原理细节 2.对象在JVM内存中如何分配如何流转 3.部署线上系统时如何设置JVM内存大小 4.如何设置JVM堆内存大小 5.如何设置JVM栈内存与永久代大小 6.问题汇总 ...

  2. vue-cli@4搭建 vue + element-ui 项目实操

    原文链接: vue-cli@4搭建 vue + element-ui 项目实操

  3. [转]worldwind在线加载google地图,或者基于墨卡托投影的切片地图

    package gis1; import java.net.MalformedURLException; import java.net.URL; import gov.nasa.worldwind. ...

  4. 即时通讯技术文集(第10期):IM通信协议该选TCP还是UDP [共12篇]

    为了更好地分类阅读52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第10 期. [-1-] 简述传输层协议TCP和UDP的区别 [链接] http://www.52 ...

  5. 【狂神说Java】Java零基础学习笔记-Java流程控制

    [狂神说Java]Java零基础学习笔记-Java流程控制 Scanner对象 之前我们学的基本语法中我们并没有实现程序和人的交互,但是Java给我们提供了这样一个工具类,我们可以获取用户的输入.ja ...

  6. 超实用 JMeter BeanShell Sampler 教程

    超实用 JMeter BeanShell Sampler 教程 宝子们,今天咱继续深挖 JMeter 里超厉害的 BeanShell Sampler,这次多来点实际工作中的例子,让你彻底搞懂它! 一. ...

  7. 【译】GitHub Copilot Free 在 Visual Studio 中

    可能您还没有听说过,GitHub 刚刚宣布了 Copilot Free(免费版)!好消息是:您现在已经可以在 Visual Studio 中开始使用 Copilot Free 了.它现在已经可用了,我 ...

  8. HashMap知识点

    1.基本数据结构 1. JDK1.7 数组 + 链表 2. JDK1.8 数组 + (链表 | 红黑树) 2.树化与退化 1.树化意义 1.红黑树用来避免Dos攻击,防止链表过长时性能下降,树化应该是 ...

  9. biancheng-Maven依赖

    目录http://c.biancheng.net/maven2/profile.html 1Maven简介2Maven安装与配置3Maven POM4创建Maven项目5Maven项目的构建与测试6M ...

  10. 【java提高】---细则(1)

    异常 一.异常与错误的区别 再讲异常之前我们就应该要知道异常和错误的区别 Error类和Exception类的父类都是throwable类,他们的区别是: Error类一般是指与虚拟机相关的问题,如系 ...