设为首页收藏本站
天天打卡

 找回密码
 立即注册
搜索
查看: 70|回复: 10

html格式化输出JSON示例(测试接口)

[复制链接]

3

主题

64

回帖

196

积分

注册会员

积分
196
发表于 2024-4-20 10:32:13 | 显示全部楼层 |阅读模式
将 json 数据以美观的缩进格式显示出来,借助最简单的 JSON.stringify 函数就可以了,因为此函数还有不常用的后面2个参数。
见MDN https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify 的描述。
示例代码如下:
  1. <html>

  2.     <head>

  3.         <meta charset="utf-8" />



  4.         <title>hello</title>



  5.         <style>

  6.             pre {outline: 1px solid #ccc; padding: 5px; margin: 5px; }

  7.             .string { color: green; }

  8.             .number { color: darkorange; }

  9.             .boolean { color: blue; }

  10.             .null { color: magenta; }

  11.             .key { color: red; }

  12.         </style>

  13.         <script type="text/javascript">

  14.         function syntaxHighlight(json) {

  15.             if (typeof json != 'string') {

  16.                 json = JSON.stringify(json, undefined, 2);

  17.             }

  18.             json = json.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>');

  19.             return json.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g, function(match) {

  20.                 var cls = 'number';

  21.                 if (/^"/.test(match)) {

  22.                     if (/:$/.test(match)) {

  23.                         cls = 'key';

  24.                     } else {

  25.                         cls = 'string';

  26.                     }

  27.                 } else if (/true|false/.test(match)) {

  28.                     cls = 'boolean';

  29.                 } else if (/null/.test(match)) {

  30.                     cls = 'null';

  31.                 }

  32.                 return '<span class="' + cls + '">' + match + '</span>';

  33.             });

  34.         }



  35.     </script>

  36.     </head>

  37.     <body>



  38.     <pre id="result">



  39.     </pre>

  40.     <script type="text/javascript">

  41.         var songResJson={  

  42.               "service": "ALL",  

  43.               "qt": 581,  

  44.               "content": {  

  45.                 "answer": {  

  46.                   "song": "如果缘只到遇见",  

  47.                   "album": "如果缘只到遇见",  

  48.                   "artist": "吴奇隆 严艺丹",  

  49.                   "pic_url": "http://p1.music.126.net/-u3WgIXsFNCW7d8Jy7pCEA==/5921969627395387.jpg"

  50.                 },  

  51.                 "scene": "music"

  52.               }  

  53.             }

  54.             document.getElementById('result').innerHTML = syntaxHighlight(songResJson);



  55.         // $('#result').html(syntaxHighlight(songResJson));

  56.     </script>

  57.      

  58.     </body>

  59. </html>
复制代码
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

0

主题

60

回帖

118

积分

注册会员

积分
118
发表于 2024-4-21 20:26:58 | 显示全部楼层
我们一起努力,共同解决问题吧。

2

主题

46

回帖

138

积分

注册会员

积分
138
发表于 2024-4-23 19:06:08 | 显示全部楼层
这个话题很有趣,我想多了解一些
  • 打卡等级:无名新人
  • 打卡总天数:1
  • 打卡月天数:0
  • 打卡总奖励:21
  • 最近打卡:2024-05-25 21:32:01

2

主题

59

回帖

184

积分

注册会员

积分
184
发表于 2024-5-8 08:21:11 | 显示全部楼层
确实牛逼

0

主题

47

回帖

95

积分

注册会员

积分
95
发表于 2024-5-30 14:15:19 | 显示全部楼层
这个话题很有趣,我想多了解一些

0

主题

52

回帖

103

积分

注册会员

积分
103
发表于 2024-6-4 21:21:04 | 显示全部楼层
保持尊重和礼貌对待其他成员是必要的。

3

主题

57

回帖

178

积分

注册会员

积分
178
发表于 2024-6-6 13:21:59 | 显示全部楼层
666666666666666666

1

主题

39

回帖

101

积分

注册会员

积分
101
发表于 2024-6-11 10:43:16 | 显示全部楼层
说得太好了,完全同意!

1

主题

48

回帖

117

积分

注册会员

积分
117
发表于 2024-9-16 11:03:07 | 显示全部楼层
已测试,非常不错

0

主题

54

回帖

108

积分

注册会员

积分
108
发表于 2024-9-22 23:16:34 | 显示全部楼层
确实牛逼
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|爱云论坛 - d.taiji888.cn - 技术学习 免费资源分享 ( 蜀ICP备2022010826号 )|天天打卡

GMT+8, 2024-11-24 13:05 , Processed in 0.111349 second(s), 26 queries .

Powered by i云网络 Licensed

© 2023-2028 正版授权

快速回复 返回顶部 返回列表