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 相关文章推荐
在javaScript中关于submit和button的区别介绍
Oct 20 Javascript
用javascript为页面添加天气显示实现思路及代码
Dec 02 Javascript
JS 日期比较大小的简单实例
Jan 13 Javascript
JS使用replace()方法和正则表达式进行字符串的搜索与替换实例
Apr 10 Javascript
JavaScript实现的简单烟花特效代码
Oct 20 Javascript
node.js路径处理方法以及绝对路径详解
Mar 04 Javascript
js插件Jcrop自定义截取图片功能
Oct 14 Javascript
AngularJS解决ng界面长表达式(ui-set)的方法分析
Nov 07 Javascript
JS基于递归算法实现1,2,3,4,5,6,7,8,9倒序放入数组中的方法
Jan 03 Javascript
Vue 动态组件与 v-once 指令的实现
Feb 12 Javascript
vue前端框架—Mint UI详解(更适用于移动端)
Apr 30 Javascript
Vue路由模块化配置的完整步骤
Aug 14 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
linux系统下php安装mbstring扩展的二种方法
2014/01/20 PHP
PHP基于php_imagick_st-Q8.dll实现JPG合成GIF图片的方法
2014/07/11 PHP
11个PHPer必须要了解的编程规范
2014/09/22 PHP
微信支付PHP SDK ―― 公众号支付代码详解
2016/09/13 PHP
基于jquery实现鼠标左右拖动滑块滑动附源码下载
2015/12/23 Javascript
Javascript 字符串模板的简单实现
2016/02/13 Javascript
vuex实现简易计数器
2016/10/27 Javascript
详解vue2.0 transition 多个元素嵌套使用过渡
2017/06/19 Javascript
微信小程序 input表单与redio及下拉列表的使用实例
2017/09/20 Javascript
9种使用Chrome Firefox 自带调试工具调试javascript技巧
2017/12/22 Javascript
node.js学习笔记之koa框架和简单爬虫练习
2018/12/13 Javascript
[55:44]OG vs NAVI 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
Python实现爬取逐浪小说的方法
2015/07/07 Python
python下实现二叉堆以及堆排序的示例
2017/09/29 Python
基于pandas数据样本行列选取的方法
2018/04/20 Python
深入理解Django自定义信号(signals)
2018/10/15 Python
如何在Python中实现goto语句的方法
2019/05/18 Python
Python实现的服务器示例小结【单进程、多进程、多线程、非阻塞式】
2019/05/23 Python
Python倒排索引之查找包含某主题或单词的文件
2019/11/13 Python
Python进程间通信multiprocess代码实例
2020/03/18 Python
python多进程下的生产者和消费者模型
2020/05/07 Python
Node.js 和 Python之间该选择哪个?
2020/08/05 Python
解决selenium+Headless Chrome实现不弹出浏览器自动化登录的问题
2021/01/09 Python
美国家具网站:Cymax
2016/09/17 全球购物
世界上最大的网络主机公司:1&1
2016/10/12 全球购物
英国时尚和家居用品零售商:Matalan
2021/02/28 全球购物
行政助理求职自荐信
2013/10/26 职场文书
职业技术学校毕业生推荐信
2013/12/03 职场文书
学生打架检讨书大全
2014/01/23 职场文书
研究生考核个人自我鉴定
2014/03/27 职场文书
岗位工作说明书
2014/07/29 职场文书
2014年语文教研组工作总结
2014/12/06 职场文书
《叶问2》观后感
2015/06/15 职场文书
Python机器学习之基础概述
2021/05/19 Python
pytorch 预训练模型读取修改相关参数的填坑问题
2021/06/05 Python
MIME类型中application/xml与text/xml的区别介绍
2022/01/18 HTML / CSS