Node.js JSON模块用法实例分析


Posted in Javascript onJanuary 04, 2019

本文实例讲述了Node.js JSON模块用法。分享给大家供大家参考,具体如下:

一、JSON.stringify语法:

JSON.stringify(value [, replacer] [, space])

value:是必选字段。就是你输入的对象,比如数组,类等。

replacer(可选参数):它又分为2种方式,一种是数组,第二种是方法。

(1)replacer为数组时,表示的是Key,只有在类中有出现过的Key的键值对(Key-Value)才会在转化的结果中出现。
replacer数组仅对输入参数是类的情况有效,如果输入参数是数组则直接忽略该参数。

(2)replacer为方法时,表示把每一个“键值对”作为参数送入函数中,然后用处理后的Value值替代原Value值输出到转化的结果中。
replacer为方法仅对输入参数是数组的情况有效,如果输入参数是类则直接忽略该参数。

space(可选参数):就是用什么来做分隔符的。

(1)如果省略的话,那么在每个键值对(”Key”:Value)就没有分隔符,否则会默认添加一个换行符 ‘\n' 加上该分隔符。

(2)如果是字符串或者是转义字符,则会在每一个键值对(”Key”:Value)添加上换行符 ‘\n'(包括第一个键值对),然后再加上该分隔符。

var person = new Object();
person.name = 'chy';
person.age = 24;
person.city= ['FuZhou', 'XiaMen'];
var replacerArr = [ 'name', 'city', 'unknown' ];
var space = '-*-';
JSON.stringify(person);
//输出 '{"name":"city","age":24,"city":["FuZhou","XiaMen"]}'
JSON.stringify(person, replacerArr);
//输出 '{"name":"chy","city":["FuZhou","XiaMen"]}'
JSON.stringify(person, function(key, value) {
  console.log("key = " + key);
  return value.toString().toUpperCase();
});
/*
输出
key =
'"[OBJECT OBJECT]"'
*/
var personArr = [ 'Bob', 'Tina', 'Tom', 'bob', 'Linda' ];
var replacerArr = [ 'name', 'city', 'unknown' ];
var space = '-*-';
JSON.stringify(personArr);
//输出 '["Bob","Tina","Tom","bob","Linda"]'
JSON.stringify(personArr, replacerArr);
//输出 '["Bob","Tina","Tom","bob","Linda"]'
JSON.stringify(personArr, function(key, value) {
  console.log("key = " + key);
  return value.toString().toUpperCase();
});
/*
输出
key =
'"BOB, TINA, TOM, BOB, LINDA"'
*/

二、JSON.parse语法:

JSON.parse(string)

待解析的字符串无论是键还是值,都必须用”双引号”括起来。注意是双引号,单引号无效。

JSON.parse('{name:"chy"}');
//输出 SyntaxError: Unexpected token n in JSON at position 1
JSON.parse("{'name':'chy'}");
//输出 SyntaxError: Unexpected token ' in JSON at position 1
JSON.parse('{"name":"bob"}');
//输出 { name: 'bob' }
JSON.parse("{\"name\":\"bob\"}");
//输出 { name: 'bob' }
JSON.parse('{"age":1}');
//输出 { age: 1 }
Javascript 相关文章推荐
document.onreadystatechange事件的用法分析
Oct 17 Javascript
jQuery UI Autocomplete 体验分享
Feb 14 Javascript
js动态创建上传表单通过iframe模拟Ajax实现无刷新
Feb 20 Javascript
javascript事件冒泡详解和捕获、阻止方法
Apr 12 Javascript
理解jQuery stop()方法
Nov 21 Javascript
浅谈String.valueOf()方法的使用
Jun 06 Javascript
用jQuery.ajaxSetup实现对请求和响应数据的过滤
Dec 20 Javascript
Vue异步组件使用详解
Apr 08 Javascript
JS简单实现数组去重的方法分析
Oct 14 Javascript
浅谈vue中慎用style的scoped属性
Nov 28 Javascript
Angular4编程之表单响应功能示例
Dec 13 Javascript
详解element-ui日期时间选择器的日期格式化问题
Apr 08 Javascript
使用VUE+iView+.Net Core上传图片的方法示例
Jan 04 #Javascript
Node.js assert断言原理与用法分析
Jan 04 #Javascript
如何为vuex实现带参数的 getter和state.commit
Jan 04 #Javascript
原生javascript实现连连看游戏
Jan 03 #Javascript
JavaScript键盘事件常见用法实例分析
Jan 03 #Javascript
JavaScript常见鼠标事件与用法分析
Jan 03 #Javascript
JavaScript实现动态添加、移除元素或属性的方法分析
Jan 03 #Javascript
You might like
php垃圾代码优化操作代码
2010/08/05 PHP
PHP session有效期session.gc_maxlifetime
2011/04/20 PHP
javascript URL锚点取值方法
2009/02/25 Javascript
基于jquery的当鼠标滚轮到最底端继续加载新数据思路分享(多用于微博、空间、论坛 )
2011/10/10 Javascript
jquery对单选框,多选框,文本框等常见操作小结
2014/01/08 Javascript
使用jQuery实现input数值增量和减量的方法
2015/01/24 Javascript
javascript中Object使用详解
2015/01/26 Javascript
解决bootstrap中modal遇到Esc键无法关闭页面
2015/03/09 Javascript
JQuery使用index方法获取Jquery对象数组下标的方法
2015/05/18 Javascript
javascript创建对象、对象继承的实用方式详解
2016/03/08 Javascript
标准的js无缝滚动效果
2016/08/30 Javascript
详解NodeJs支付宝移动支付签名及验签
2017/01/06 NodeJs
Bootstrap滚动监听组件scrollspy.js使用方法详解
2017/07/20 Javascript
vue.js打包之后可能会遇到的坑!
2018/06/03 Javascript
vue监听input标签的value值方法
2018/08/27 Javascript
vue3.0 加载json的方法(非ajax)
2020/10/26 Javascript
Python修改Excel数据的实例代码
2013/11/01 Python
Python 编码Basic Auth使用方法简单实例
2017/05/25 Python
Python实现1-9数组形成的结果为100的所有运算式的示例
2017/11/03 Python
用Python实现BP神经网络(附代码)
2019/07/10 Python
python tkinter窗口最大化的实现
2019/07/15 Python
PyQt 图解Qt Designer工具的使用方法
2019/08/06 Python
python3实现的zip格式压缩文件夹操作示例
2019/08/17 Python
python爬取本站电子书信息并入库的实现代码
2020/01/20 Python
python标准库OS模块函数列表与实例全解
2020/03/10 Python
Django中Aggregation聚合的基本使用方法
2020/07/09 Python
CSS3网格的三个新特性详解
2014/04/04 HTML / CSS
英国家电直销:Appliances Direct
2016/09/22 全球购物
马来西亚在线购物:POPLOOK.com
2019/12/09 全球购物
简单的JAVA编程面试题
2013/03/19 面试题
机电专业个人求职信范文
2013/12/30 职场文书
婚礼证婚人证婚词
2014/01/08 职场文书
爱国主义演讲稿
2014/05/07 职场文书
优秀班组长事迹
2014/05/31 职场文书
2015年转正工作总结范文
2015/04/02 职场文书
Golang Gob编码(gob包的使用详解)
2021/05/07 Golang