使用方法,format(json)这样为格式化代码。

format(json,true)为开启压缩模式。

function format(txt,compress/*是否为压缩模式*/){/* 格式化JSON源码(对象转换为JSON文本) */

var indentChar = ' ';

if(/^\s*$/.test(txt)){

alert('数据为空,无法格式化! ');

return;

}

try{var data=eval('('+txt+')');}

catch(e){

alert('数据源语法错误,格式化失败! 错误信息: '+e.description,'err');

return;

};

var draw=[],last=false,This=this,line=compress?'':'\n',nodeCount=0,maxDepth=0;

var notify=function(name,value,isLast,indent/*缩进*/,formObj){

nodeCount++;/*节点计数*/

for (var i=0,tab='';i

tab=compress?'':tab;/*压缩模式忽略缩进*/

maxDepth=++indent;/*缩进递增并记录*/

if(value&&value.constructor==Array){/*处理数组*/

draw.push(tab+(formObj?('"'+name+'":'):'')+'['+line);/*缩进'[' 然后换行*/

for (var i=0;i

notify(i,value[i],i==value.length-1,indent,false);

draw.push(tab+']'+(isLast?line:(','+line)));/*缩进']'换行,若非尾元素则添加逗号*/

}else if(value&&typeof value=='object'){/*处理对象*/

draw.push(tab+(formObj?('"'+name+'":'):'')+'{'+line);/*缩进'{' 然后换行*/

var len=0,i=0;

for(var key in value)len++;

for(var key in value)notify(key,value[key],++i==len,indent,true);

draw.push(tab+'}'+(isLast?line:(','+line)));/*缩进'}'换行,若非尾元素则添加逗号*/

}else{

if(typeof value=='string')value='"'+value+'"';

draw.push(tab+(formObj?('"'+name+'":'):'')+value+(isLast?'':',')+line);

};

};

var isLast=true,indent=0;

notify('',data,isLast,indent,false);

return draw.join('');

}

js html json 压缩工具,JS格式化/压缩JSON数据相关推荐

  1. 实现JSON在线美化(格式化)、JSON转CSV、CSV转XML工具-toolfk程序员工具网

    本文要推荐的[ToolFk]是一款程序员经常使用的线上免费测试工具箱,ToolFk 特色是专注于程序员日常的开发工具,不用安装任何软件,只要把内容贴上按一个执行按钮,就能获取到想要的内容结果.Tool ...

  2. nodejs写入json文件,格式化输出json的方法

    将 JSON 对象写入文件. 使用 fs.writeFile(),模板字面量 和 JSON.stringify() 将 json 对象写入到 .json 文件中. 写入json文件后,都会出现很恶心的 ...

  3. Java后端压缩JSON字符串,前端使用pako.min.js解压

    我在日常开发中遇到,由于后端返回JSON数据较大,导致前端响应的较慢,于是考虑通过后端压缩,前端解压的方式来进行优化: 后端压缩工具类: package com.stt.common.util;imp ...

  4. JS转json对象为格式化json字符串

    JS转json对象为格式化json字符串 JSON.stringify(jsonObj, null, 4)

  5. 【Js】【Json】Js压缩含有空白符的json字符串

      工作中经常需要将json类型字符串进行压缩,可以通过js内置JSON对象来进行压缩. 思路: 先把还有空格符的json字符串转化成json对象   let jsonObj = JSON.prase ...

  6. html遍历json数组,JS遍历JSON数组及获取JSON数组长度操作示例【测试可用】

    本文实例讲述了JS遍历JSON数组及获取JSON数组长度操作.分享给大家供大家参考,具体如下: 遍历 JSON 数组: var questions = data.data.questionnaire. ...

  7. JSON与js对象序列化

    JavaScript对象表示法(JavaScript Object Notation,简称JSON)是一种轻量级的数据交换格式,它基于js字面量表示法,是js的一个子集.虽然是一个js的子集但是他与语 ...

  8. json数组 js html标签,js定义json对象数组 json 数组也是数组 //

    var jsonstr="[{'name':'a','value':1},{'name':'b','value':2}]"; var jsonarray = eval('('+js ...

  9. php将字符串转换为json格式,js中将字符串转换为json格式的三种方法

    json在js的开发过程中经常会用到,像在使用ajax开发的项目过程中,经常需要将json格式的字符串返回到前端,前端解析成json对象. 下面为大家介绍下将字符串转换为json对象的三种常用的方法: ...

  10. jq js json 转字符串_JS中JSON对象和String之间的互转及处理技巧

    json:JavaScript 对象表示法(javascript Object Notation),其实JSON就是一个javaScript的对象(Object)而已. 如有不清楚JSON,可以去w3 ...

最新文章

  1. linux 下面安装mysql
  2. c语言编写atm取款功能_21行C语言代码编写一个具备加密功能的聊天程序!网友:666...
  3. Oracle面试过程中常见的二十个问题
  4. C# 实现DB文件的导入导出功能
  5. 企业网站制作要以简约为主
  6. 源码解析:Git的第一个提交是什么样的?
  7. jquery如何获取checkbox,并判断是否选中
  8. linux+svn+拉取版本_在linux客户端下管理svn版本库
  9. 21 WM配置-策略-入库策略1-定义固定仓位的策略F(Fixed Bin Strategy)
  10. 工作 10 年,月薪过万者不足三成,程序员却笑了!
  11. ASP.NET AJAX(开发代号Atlas)重要参考资源大收集
  12. matlab2016a 问题及解决方法记录
  13. 读称题写出执行结果html,C++(II)13-14(2)试题B - 往年试卷
  14. python3爬虫教程
  15. 成功解决error: no match for ‘operator<<’ (operand types are ‘std::basic_ostream<char>’ and ‘Eigen::Quate
  16. java StringUtil之String工具类
  17. Linux云计算学习笔记day39
  18. python多显卡支持是什么意思_用blenderpython控制显卡渲图,多显卡用户福音
  19. 全国城市python-json格式
  20. 计算机丢失uxthemedll,win10系统开机显示uxtheme.dll丢失的处理办法

热门文章

  1. php 字体设计,时尚前沿:15个创意的3D字体设计艺术作品欣赏
  2. Jmeter安装TPS插件
  3. python笔试题目及答案_python笔试题(附带答案)
  4. 数据结构(C语言版 第2版)课后习题答案全集 严蔚敏
  5. 【影视APP】分享一个影视APP源码
  6. 科学计算机病毒代码大全,有哪些计算机病毒代码
  7. linux怎样重启命令,Linux重启命令介绍
  8. Linux命令学习:Linux中more和less命令以及查找用法
  9. kali linux的使用教程
  10. 开源demo| 视频应用类开源 Demo 大盘点