最近几天在写后台管理, 太多的表单数据要处理,但是仔细一想!~~~
这个后台是我自己用的,收集表单多麻烦,直接写json不就行了,
~~于是开始想办法找一个可以直接格式化json的方法, 防止json写错了~
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
//格式化代码函数,已经用原生方式写好了不需要改动,直接引用就好 var formatJson = function (json, options) { var reg = null, formatted = '', pad = 0, PADDING = ' '; options = options || {}; options.newlineAfterColonIfBeforeBraceOrBracket = (options.newlineAfterColonIfBeforeBraceOrBracket === true) ? true : false; options.spaceAfterColon = (options.spaceAfterColon === false) ? false : true; if (typeof json !== 'string') { json = JSON.stringify(json); } else { json = JSON.parse(json); json = JSON.stringify(json); } reg = /([\{\}])/g; json = json.replace(reg, '\r\n$1\r\n'); reg = /([\[\]])/g; json = json.replace(reg, '\r\n$1\r\n'); reg = /(\,)/g; json = json.replace(reg, '$1\r\n'); reg = /(\r\n\r\n)/g; json = json.replace(reg, '\r\n'); reg = /\r\n\,/g; json = json.replace(reg, ','); if (!options.newlineAfterColonIfBeforeBraceOrBracket) { reg = /\:\r\n\{/g; json = json.replace(reg, ':{'); reg = /\:\r\n\[/g; json = json.replace(reg, ':['); } if (options.spaceAfterColon) { reg = /\:/g; json = json.replace(reg, ':'); } (json.split('\r\n')).forEach(function (node, index) { var i = 0, indent = 0, padding = ''; if (node.match(/\{$/) || node.match(/\[$/)) { indent = 1; } else if (node.match(/\}/) || node.match(/\]/)) { if (pad !== 0) { pad -= 1; } } else { indent = 0; } for (i = 0; i < pad; i++) { padding += PADDING; } formatted += padding + node + '\r\n'; pad += indent; } ); return formatted; }; //引用示例部分 //(1)创建json格式或者从后台拿到对应的json格式 var originalJson = {"name": "天明", "sex": "男", "age": "25"}; //(2)调用formatJson函数,将json格式进行格式化 var resultJson = formatJson(originalJson); //(3)将格式化好后的json写入页面中 document.getElementById("writePlace").innerHTML = resultJson; |
原本是黏在一起的一行json, {“name”: “天明”, “sex”: “男”, “age”: “25”};
转完了就是
{
“name”:”天明”,
“sex”:”男”,
“age”:”25″
}
这种格式~~
收工~