JS实现json格式美化【工具包系列】
<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title>json格式美化</title></head><body><form id="form1" name="form1"><textarea name="sourcejson" id="sourcejson" cols="80" rows="30"></textarea> <input type="button" onclick="formatJson();" value="美化"/><textarea name="targetjson" id="targetjson" cols="80" rows="30"> </textarea></form></body><script type="text/javascript">function repeat(s, count) {return new Array(count + 1).join(s);}function formatJson() {var json= document.form1.sourcejson.value;var i = 0,len = 0,tab = " ",targetJson = "",indentLevel = 0,inString = false,currentChar = null;for (i = 0, len = json.length; i < len; i += 1) { currentChar = json.charAt(i);switch (currentChar) {case '{': case '[': if (!inString) { targetJson += currentChar + "\n" + repeat(tab, indentLevel + 1);indentLevel += 1; } else { targetJson += currentChar; }break; case '}': case ']': if (!inString) { indentLevel -= 1; targetJson += "\n" + repeat(tab, indentLevel) + currentChar; } else { targetJson += currentChar; } break; case ',': if (!inString) { targetJson += ",\n" + repeat(tab, indentLevel); } else { targetJson += currentChar; } break; case ':': if (!inString) { targetJson += ": "; } else { targetJson += currentChar; } break; case ' ':case "\n":case "\t":if (inString) {targetJson += currentChar;}break;case '"': if (i > 0 && json.charAt(i - 1) !== '\\') {inString = !inString; }targetJson += currentChar; break;default: targetJson += currentChar; break; } } document.form1.targetjson.value=targetJson;return;}</script></html>
注意:不要使用div作为输出容器,因为标签不会被执行。
运行结果
JS实现json格式美化【工具包系列】相关推荐
- html js发送http请求数据格式,JS获取url参数,JS发送json格式的POST请求方法
一.获取url所有参数值 function US() { var name, value; var str = location.href; var num = str.indexOf("? ...
- 细微之处见真章之JSON格式美化
一.背景 今天 @段段 在技术群里提出一个问题:"如何实现JSON的格式美化". 具体含义是,通过后端代码实现将紧凑的JSON字符串变为更美观的形式. 如下面的JSON字符串 {\ ...
- Node.js操作Json格式文件
json格式文件也是很常用的数据存储传输格式.本篇将介绍Node.js如何添加.修改和解析Json格式数据. /*** Json文件操作:添加.修改.删除以及读取*/ const fs = requi ...
- js导出JSON格式文件
在src目录下新建tools文件价,在tools文件中新建index.js(文件内名字随意) 在index.js文件中 const Tools = {// 导出文件exportJson(name, d ...
- ajax调取mysql数据显示在html_jQuery+Ajax+js请求json格式数据并渲染到html页面
json格式的数据文件有两种方式 一种是xxx.json文件 一种是xxx.php文件 前者是json格式的文件 后者是输出json格式的文件 前者是本地的文件 后者是获取数据库的数据再输出成json ...
- java实现Json格式美化【工具包系列】
package com.json;/*** 该类提供格式化JSON字符串的方法.* 该类的方法formatJson将JSON字符串格式化,方便查看JSON数据.* <p>例如:* < ...
- java实现json_java实现Json格式美化【工具包系列】
package com.json; /** * 该类提供格式化JSON字符串的方法. * 该类的方法formatJson将JSON字符串格式化,方便查看JSON数据. * 例如: * JSON字符串: ...
- hive 导出json格式 文件_Hive 系列 之 基本操作合集
下面是本课程概览: (1)hive系列之简介,安装,beeline和hiveserver2 (2)hive系列之基本操作 (3)hive系列之udf (4)hive系列之二级分区和动态分区 (5)hi ...
- js 接收 json格式的字符串
方法一:函数构造定义法返回 var strJSON = "{name:'json name'}";//得到的JSON var obj = new Function("re ...
最新文章
- linux root权限_深入了解 Linux 权限
- 近7000字长文详细讲解Java包装类,面试稳了
- 【转自元宝兄】关于delphi Com+调用C# DLL的一点说明
- 网易云音乐Android版使用的开源组件
- trust cv的含义
- 如何召开一次无效的会议?
- 微信小程序 - 按照官网文档构建npm包 - 提示【没有找到可以构建的npm】
- python下表运算_python科学计算_numpy_广播与下标
- 老王讲设计模式(八)——适配器模式
- 芯片短缺蔓延至手机市场:骁龙888短缺 三星中低端机型生产受阻
- hive-02-hive文件存储格式
- 包与四种权限访问修饰符
- 反三角函数在线计算机,反三角函数(反正弦,反余弦,反正切,反余切,反正割,反余割)在线计算器_三贝计算网_23bei.com...
- hyperf获取客户端真实ip
- Ajax怎么解决乱码PHP,php Ajax乱码
- 如何处理计算机显卡故障,显卡出现故障怎么办
- 抖音极速版/快手极速版自动浏览
- 单片机测试开发板用什么软件,怎么知道单片机开发板的好坏
- centos 之网络配置
- 什么是商家转账到零钱