1.JSON.stringify()只序列化可遍历属性(enumerable=true)

var obj = {};
Object.defineProperties(obj, {
'foo': {
value: 1,
enumerable: true
},
'bar': {
value: 2,
enumerable: false
}
}); JSON.stringify(obj); // "{"foo":1}"

2. JSON.stringify(obj, fn|arr);

1)当第二个参数为数组时,表示需要被序列化的对象的属性列表;

2)当第二个参数为方法时,function(key, value){}表示每个属性对应的key-value值,最终的返回值可以用来改变原来的结果。

该方法可以用来在序列化之前改变对象的内容。

var o = {a: {b: 1}};

function f(key, value) {
console.log("["+ key +"]:" + value);
return value;
} JSON.stringify(o, f)
// []:[object Object]
// [a]:[object Object]
// [b]:1
// '{"a":{"b":1}}' // 递归处理,每次处理上次的返回结果

3. JSON.stringify(obj,null,number|string)

可以接受第三个参数,这个可以用来按格式打印对象

1)当第三个参数为数值时,表示每个属性前的空格数(<10)

console.log(JSON.stringify({a:{b:1}},null,2))
{
"a": {
"b": 1
}
}

2)当第三个参数为字符串时,表示在每个属性前添加该字符串(<10)

console.log(JSON.stringify({a:{b:1}},null,"==="))
{
==="a": {
======"b": 1
===}
}

JSON.stringify()的不常见用法的更多相关文章

  1. JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法

    1. JSON.parse(jsonString): 在一个字符串中解析出JSON对象 var str = '[{"href":"baidu.com",&quo ...

  2. 转:关于JSON.parse(),JSON.stringify(),jQuery.parseJSON()的用法

    1. JSON.parse(jsonString): 在一个字符串中解析出JSON对象 ? 1 2 3 var str = '[{"href":"baidu.com&qu ...

  3. JSON.stringify常见用法

    转摘于其他博客 var data =[ { name: "金",sex:"1",age:26 }, { name: "才",sex:&quo ...

  4. arguments.callee 调用函数自身用法----JSON.parse()和JSON.stringify()前端js数据转换json格式

    arguments.callee 调用函数自身用法 arguments.callee 在哪一个函数中运行,它就代表哪个函数. 一般用在匿名函数中. 在匿名函数中有时会需要自己调用自己,但是由于是匿名函 ...

  5. JSON.parse()与JSON.stringify()高级用法

    JSON.parse()与JSON.stringify是将JSON对象与字符串互相转换的方法,它们还有一些参数可以让我们在实际应用中更加方便,现在介绍一下它们的高级用法 JSON.parse() JS ...

  6. JSON.stringify和JSON.parse的用法

    用法概述 所有的现代浏览器都支持 JSON 对象,有两个非常有用的方法来处理 JSON 格式的内容: JSON.parse(string) 接受一个 JSON 字符串并将其转换成一个 JavaScri ...

  7. JSON.parse()和JSON.stringify() 的用法区别

    parse用于从一个字符串中解析出json对象,如 var str = '{"name":"huangxiaojian","age":&qu ...

  8. JSON.parse()和JSON.stringify()的用法

    JSON.parse()是用于从一个字符串中解析出json对象,如下所示 var str = '{"name":"flsummer","age&quo ...

  9. JSON.stringify实战用法

    1.首先定义一个数组 var teamPlanMinList = new Array(); 2. 定义一个json对象 var json = { "plname":plname, ...

随机推荐

  1. Python 面向对象之反射

    Python 面向对象之反射 TOC 什么是反射? hasattr getattr setattr delattr 哪些对象可以使用反射 反射的好处 例子一 例子二 什么是反射? 程序可以访问.检查和 ...

  2. 基于element-tree-table树型表格点击节点请求数据展开树型表格

    效果: 引用CSS.JS: Vue.element-ui.Axios treeTable: https://github.com/ProsperLee/element-tree-grid 模拟根据父i ...

  3. zabbix3.4 端口和进程监控配置

    虚拟机系统版本:centos7.5 zabbix server 版本:zabbix3.4 配置步骤:待定 近期即将更新!

  4. iOS---------- Safe Area Layout Guide before iOS 9.0

    如果你们的项目不做iOS9以下支持就打开main.storyboard    去除Use safe Area Layout 如果不考虑iOS9以下支持就按照下面的步骤 选中控制器,右边面板的Build ...

  5. android如何获取SHA1

    某些Google Play服务(例如Google登录和App Invites)要求我们提供签名证书的SHA-1,以便google paly为我们的应用创建OAuth2客户端和API密钥. 那么如何获取 ...

  6. PHP如何实现在数据库随机获取几条记录

    本文实例讲述了PHP实现在数据库百万条数据中随机获取20条记录的方法.PHP实例分享给大家供大家参考,具体如下: 为什么要写这个? 在去某个公司面试时,让写个算法出来,当时就蒙了,我开发过程中用到算法 ...

  7. 使用docker部署skywalking

    使用docker部署skywalking Intro 之前在本地搭建过一次 skywalking + elasticsearch ,但是想要迁移到别的机器上使用就很麻烦了,于是 docker 就成了很 ...

  8. Java 图片爬虫,java打包jar文件

    目录 1. Java 图片爬虫,制作 .jar 文件 spider.java 制作 jar 文件 添加执行权限 1. Java 图片爬虫,制作 .jar 文件 spider.java spider.j ...

  9. MySQL分数排名同分并列与不并列查询

    Scores表 | Id | Score | | 3.50 | | 3.65 | | 4.00 | | 3.85 | | 4.00 | | 3.65 | 并列 | Score | Rank | | | ...

  10. markdown小知识总结

    字体.字号.颜色 但如果我们想修改文字大小/颜色/字体,就要用font标签,代码如下: 宋体大小为2的字 color代表字体颜色(要用16进制颜色值),size代表文字大小,face代表字体 效果展示 ...