javascript - 是否有任何特别注意简洁的 JSON pretty-print ?

标签 javascript json line word-wrap pretty-print

我想要一台 JSON pretty-print ,它可以识别数组或对象何时适合一行并执行此操作。示例:

{
  "fits": ["JSON", "pretty", "printer"],
  "longer": [
    "???????????????????????????????????????????????????",
    "???????????????????????????????????????????????????",
    "???????????????????????????????????????????????????",
    "???????????????????????????????????????????????????",
    "???????????????????????????????????????????????????"
  ]
}

有这样的独立库吗?如果没有,我将如何着手写一个?

我最感兴趣的是 JavaScript 实现。

最佳答案

我不知道有没有这样简洁的 JSON 打印机,但如果你想自己制作应该不难:

  • 您可以使用for(property in object) 来迭代给定对象的属性。
    • 根据用例,您可能希望使用 hasOwnProperty 进行过滤。
  • 您可以使用 typeof 确定引用是否指向对象、数组、字符串或数字
  • 让您的 pretty-print 函数接收初始缩进偏移量和要打印的对象。这可能足以决定您是否应该内联每个属性。
    • 我不确定这种“贪心”策略是否始终是“最佳”策略 - 也许现在在多行中做某事可能会更好,以便以后能够内联。不过一开始我不会担心这个。

关于javascript - 是否有任何特别注意简洁的 JSON pretty-print ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6012332/

相关文章:

javascript - 使用 vanilla javascript 获取 json 格式的 php

Javascript 这些调用在 Node.js 中是否相同?

Android从json文件(.txt)获取数据

javascript - angularJS - ng-if 和 ng-model

javascript - ckeditor 4 jQuery 适配器,如何添加自定义按钮?

javascript - 绘制 JSON 数据图表 - 直接来自 IBM Cloudant(bluemix no-sql)数据库的 Javascript?请帮助 N00b

c# - JsonSerializer.Serialize 返回空对象

shell - 如何检测awk中END之前的最后一行

Javascript 画线脚本不起作用

jquery - 我怎样才能在我的 div 后面放一条线?