有关javascript中的JSON.parse和JSON.stringify的使用一二
有没有想过,当我们的大后台只是扮演一个数据库的角色,json在前后台的数据交换中扮演极其重要的角色时,作为依托node的前端开发,其实相当多的时间都是在处理数据,准确地说就是在处理逻辑和数据(这周实习最大的收获)。
而对于依托json格式传输的数据,处理数据时,用到JSON.strinify和JSON.parse的概率是百分之百。使用这两个方法so easy,但是你真的知道其中一些相关的细节以及其中牵涉到的javascript的知识么?
JSON.parse用于从一个字符串中解析出json对象。
比如
var str = '{"name":"huangxiaojian","age":"23"}';
var str1 = JSON.parse(str);
如果你在控制台输出str1,你会发现,输出的结果是
{ name="huangxiaojian", age="23"}
也就是说,输出的是javascript对象。
事实上,对于str这个字符串是很有讲究的。首先,它必须是个字符串,所以它肯定是被单引号括起来的,而且一般绝对是单引号,理由是:还有一个要求就是字符串的内容必须符合json格式,而json格式就是要求json对象中属性名必须添加双引号。
下面举几个常见的例子:
//以下str都是无法parse成功的
var str = {"name": "xiaohu","age": 23}; //不是字符串 var str = '{"name": xiaohu,"age": 23}'; //xiaohu作为字符串没有加引号 var str = '{name: "xiaohu","age": 23}'; //name作为json数据的属性名没有加引号
JSON.stringify用于从一个对象解析出字符串,说白了,就是把对象转换为字符串。
var a = {a:1,b:2};
var b = JSON.stringify(a);
将b从控制台输出,你会看到{"a":1,"b":2},也就是说,JSON.stringify接收一个对象,将对象转换成一个字符串,神奇的是,这个结果字符串是满足json格式的。当然,这也就是JSON.stringify中的JSON存在的意义。
JSON.parse和JSON.stringify注定协同工作。将一个不符合json格式的对象,通过JSON.stringify转换为符合json格式的字符串,然后通过JSON.parse转换为json对象。很多时候,JSON.stringify和JSON.parse就是彼此作为桥梁,完成参数格式的要求,以及转换成对象或字符串以方便完成后续特定的操作。:)
有关javascript中的JSON.parse和JSON.stringify的使用一二的更多相关文章
- JSON 字符串转换为JavaScript 对象.JSON.parse()和JSON.stringify()
使用 JavaScript 内置函数 JSON.parse() 将字符串转换为 JavaScript 对象: var text = '{ "sites" : [' + '{ &qu ...
- JSON.stringify()方法是将一个javascript值(对象或者数组)转换成为一个JSON字符串;JSON.parse()解析JSON字符串,构造由字符串描述的javascript值或对象
JSON.stringify()方法是将一个javascript值(对象或者数组)转换成为一个JSON字符串:JSON.parse()解析JSON字符串,构造由字符串描述的javascript值或对象
- JSON.parse和JSON.stringify 参数详解
JSON.parse和JSON.stringify这两个浏览器自带(IE6/7除外)的方法平常我们经常用到,但是一般都只是用到了他们的第一个参数,比如字符串转对象:JSON.parse('{}') ...
- JSON.parse与JSON.stringify
JSON:JavaScript Object Notation(JavaScript对象表示法):甚至我们就可以大致认为JSON就是Javascript的对象,只不过范围小上一些. JSON的MIME ...
- JSON.parse() 和 JSON.stringify()的简单介绍
参考地址: https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse ht ...
- JSON.parse()与JSON.stringify()和eval()使用方法详解
在和后端对接口的时候,遇到了一个问题 就是series里面数据变量进行拼接的时候,data数据里面全部是数值int类型的 但是因为某些需求需要让他进行某个数据之前的数据都为空 我试过用空字符串和und ...
- JSON对象和字符串之间的相互转换 – JSON.parse() 和 JSON.stringify()
所有现代浏览器都支持 JSON 对象,有两个非常有用的方法来处理 JSON 格式的内容: JSON.parse(string) :接受一个 JSON 字符串并将其转换成一个 JavaScript 对象 ...
- JSON.parse 和 JSON.stringify 详解
JSON格式,(简写JavaScript Object Notation),是一种用于数据交换的文本格式,书写简单. 基于JavaScript原生语法,能够序列化对象.数组.数值.字符串.布尔值和 n ...
- JSON.parse() 和 JSON.stringify()
JSON.parse()和JSON.stringify() 1.parse 用于从一个字符串中解析出json 对象.例如 var str='{"name":"cpf& ...
随机推荐
- ajax后台return,js判断方法
private string CreateJoson(string result, string message) { return "{" + "\"resu ...
- CoreAnimation 核心动画一 (一些常用属性 和 方法)
1.常用属性: frame bounds center alpha Transition 过渡 transform 动画效果 2.常用方法: +(void)setAnimati ...
- eclipse不能更改设置tomcat 中的ServerLocation问题
当自己用eclipse写好了web项目后,也同时配置了服务器(tomcat6), 上面部署完毕后,直接访问http://localhost:8080 发现是 无法访问的,这是因为,Servers这里的 ...
- 简单的json传送数据
<html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> ...
- 10款让人惊叹的HTML5/jQuery图片动画特效
1.HTML5相册照片浏览器 可连接Flickr照片服务 以前我们经常会分享一些jQuery相册浏览插件,效果不错,实用性也很强.不过如果能利用HTML5来实现相册浏览器,那么相册浏览效果肯定会更加炫 ...
- JAVA多线程通信
JAVA多线程通信 package com.frank.thread; /** * author:pengyan * date:Jun 16, 2011 * file:ProducerAndCusto ...
- centos6.5安装fpm打包工具
FPM功能简单说就是将一种类型的包转换成另一种类型.FPM的github:https://github.com/jordansissel/fpm 1.支持的源类型包: dir: 将目录打包成所需要的类 ...
- 使用cookie解决微信不能存储localStorage的问题
最近在开发基于微信的Web页面时,发现有些机型不能存储信息到localStorage中,或者是页面一旦关闭,存储的信息也失效了. 于是想到用cookie来替代localStorage,存储一些简单的数 ...
- 防火墙设置:虚拟机ping不通主机,但是主机可以ping通虚拟机(转载)
我在Windows7系统安装了虚拟机,通过虚拟机安装了Ubuntu13.04,我设置的主机与虚拟机的连接方式是桥接,安装好后,发现虚拟机ping不通主机,但是主机可以ping通虚拟机. 我的操作是:关 ...
- mac os使用homebrew来管理后台服务
在linux下我们经常通过 service 或者 /etc/init.d/来管理我们的后台服务软件,并使用包管理器安装这些软件. 在mac下有homebrew这个好用的工具来安装软件,但是一直没有找到 ...