【问题标题】:Javascript Pretty Print Format is giving wrong resultJavascript Pretty Print Format 给出错误的结果
【发布时间】:2020-10-10 00:55:55
【问题描述】:

function output(inp) {
      document.body.appendChild(document.createElement('pre')).innerHTML = inp;
  }


  function searchInGitRepo(str) {
    const http = new XMLHttpRequest();
    http.open("GET", "https://api.github.com/search/repositories?q=" + str);
    http.send();
    http.onload = () => {
      var result = http.responseText;
      var strformat = JSON.stringify(result, undefined, 4);
      output(strformat);
    }
  }

  var result = searchInGitRepo('ecommerce');

我想从github 存储库中获取数据。结果完美出现,但数据未格式化。请看一下我的代码。它应该工作。我遵循了许多解决方案。没有什么对我有用!

function searchInGitRepo(str) {
    const http = new XMLHttpRequest();
    http.open("GET", "https://api.github.com/search/repositories?q=" + str);
    http.send();
    http.onload = () => {
      var result = http.responseText;
      var strformat = JSON.stringify(result, undefined, 4);
      output(strformat);
    }
}

输出函数:

function output(inp) {
      document.body.appendChild(document.createElement('pre')).innerHTML = inp;
}

【问题讨论】:

    标签: javascript json pretty-print


    【解决方案1】:

    JSON.stringify() 用于将对象转换为字符串。它通常在向 Web 服务器发送数据时使用,因为这些数据必须是字符串。

    在您的情况下,您从服务器返回的数据 result 已经是 string,因此您不需要“字符串化”它。

    使用output(result); 代替output(strformat);

    【讨论】:

    • 太棒了。谢谢。
    • 如果您有兴趣,我为您添加了解释
    • 知道了。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-15
    • 2019-02-06
    相关资源
    最近更新 更多