栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > Web开发 > JavaScript

JSON.stringify()方法的原生JS实现

JavaScript 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JSON.stringify()方法的原生JS实现

JSON的一个常见用途是作为与Web服务器交换数据。当向Web服务器发送数据时,数据必须是字符串格式。使用JSON.stringify()可以将Javascript对象转换为字符串类型。那么如何通过原生javascript来实现这个功能呢?

实现思路

通过递归调用,来实现对转换对象Object的深层value进行遍历。
利用array的join方法实现最终的字符串拼接。

具体代码
function json2str(o) {
	let arr = [];
    const fmt = function(s) {
    	if(typeof s == 'object' && s !== null) return json2str(s);
 return /^(string)$/.test(typeof s) ? `"${s}"`: s;
    }
    for (var i in o) arr.push(`"${i}":${fmt(o[i])}`)
    return `{${arr.join(',')}}`

}
const obj = { name: "Lily", age: 30, tel: "132xxxxxxxx", address: { city : "beijing", district: "haidian", detail: "dddddddd"} };
const generatedData = json2str(obj)
对比JSON.stringify方法

可直接在浏览器运行如下代码




Create JSON string from a Javascript object.

运行结果

小结

本文的JSON.stringify()方法的原生JS实现属于对javascript灵活应用的基本功。
实现思路来自于笔者平日的工作与思考的总结。
希望大家都能掌握以便在面试中脱颖而出。
您的点赞和收藏是我知识输出的最大鼓励❤️

转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号