Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript json文件中的换行符问题_Javascript_Json - Fatal编程技术网

Javascript json文件中的换行符问题

Javascript json文件中的换行符问题,javascript,json,Javascript,Json,我从一个系统中导出数据并获取这段内容,如何删除换行符,使其成为一行 我尝试过各种方法,例如“jsonData.replace(/[\r\n]+/g,“\n\n”);”,但似乎没有任何效果 {"pageUrl":"/about","name":"About Us","content":"\n \n \n \n About \n Lorem ipsum dolor sit amet, consectetur adipisicing elit

我从一个系统中导出数据并获取这段内容,如何删除换行符,使其成为一行

我尝试过各种方法,例如“
jsonData.replace(/[\r\n]+/g,“\n\n”);
”,但似乎没有任何效果

{"pageUrl":"/about","name":"About Us","content":"\n    \n        \n        
\n    
About
\n        
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod 
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, 
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo 
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse 
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non 
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
\n        
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod 
tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, 
quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo 
consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse 
cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non 
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
\n    \n"}
这是整个代码,上面只是json文件中的一项

function list_pages(){
    var access_token = BCAPI.Helper.Site.getAccessToken();
    var request = $.ajax({
        url: "/webresources/api/v3/sites/current/pages?fields=pageUrl,name,content",
        type: "GET",
        connection: "keep-alive",
        contentType: "application/json",
        headers: {
            "Authorization": $.cookie('access_token')
        }
    });
    request.done(function (msg) {
        var myJSONString = JSON.stringify(msg.items);
        **var myEscapedJSONString = myJSONString.replace(/[\r\n]/g, '');**
        $( "#results" ).append( myEscapedJSONString );
    })
    request.fail(function (jqXHR) {
        console.log("Request failed.");
        console.log("Error code: " + jqXHR.status);
        console.log("Error text: " + jqXHR.statusText);
        console.log("Response text: " + jqXHR.responseText);
    })
   }

更新的答案

你对问题的编辑完全改变了它。您正在对
JSON.stringify
的结果执行
replace
,这将永远不会产生问题中的JSON(字符串中有实际的回车符和/或换行符)

在评论中,您说过您的目标是查看格式化的JSON数据。为此:

  • 告诉
    JSON.stringify
    通过在调用中添加
    null,n
    来格式化它,其中
    n
    是您想要缩进多少内容。例如:
    JSON.stringify(msg.items,null,4)

  • 替换为
    &
    更新的答案

    你对问题的编辑完全改变了它。您正在对
    JSON.stringify
    的结果执行
    replace
    ,这将永远不会产生问题中的JSON(字符串中有实际的回车符和/或换行符)

    在评论中,您说过您的目标是查看格式化的JSON数据。为此:

    • 告诉
      JSON.stringify
      通过在调用中添加
      null,n
      来格式化它,其中
      n
      是您想要缩进多少内容。例如:
      JSON.stringify(msg.items,null,4)

    • 替换为
      &
      您是指文本中的
      \n
      字符吗?当它们被输入时,它们看起来像是字段的预期内容的一部分,并且是在文本文档中显示它们的方式的一部分。为什么要删除它们?@ADyson-不,问题中的JSON字符串中既有
      \n
      又有实际的文本换行符。(后者是无效的。)如果我将此代码添加到json美化器中,它会出错,如果我手动删除换行符,它是正常的,我无法对导入的数据做任何处理,因为它是网页的内容,但我需要对其进行美化,以便能够将其导出到另一个系统中。您是指文本中的
      \n
      字符吗?当它们被输入时,它们看起来像是字段的预期内容的一部分,并且是在文本文档中显示它们的方式的一部分。为什么要删除它们?@ADyson-不,问题中的JSON字符串中既有
      \n
      又有实际的文本换行符。(后者是无效的。)如果我将此代码添加到json美化器中,它会出错,如果我手动删除换行符,它是可以的,我无法对导入的数据做任何处理,因为它是网页的内容,但我需要对其进行美化,以便能够将其导出到另一个系统中,在代码上下文中,替换为“无”是行不通的,现在已添加原件post@djcamo-
      JSON.stringify
      永远不会生成您引用的JSON。它永远不会在字符串文本中生成包含回车符或换行符的字符串(只是等效的转义序列)。你到底想用你的
      替换
      做什么?我猜了一下你想在上面做什么。为不清楚道歉,我只是一个通过示例学习的黑客程序员,因为现在我所追求的是格式正确的json数据,因此我将其附加到HTML元素,以便我可以看到它的外观,所以,是的,我正试图消除等效的逃逸sequences@djcamo-啊!如果您想查看格式正确的JSON数据,这与我上面的编辑不同。稍等…:-)替换为nothing在代码的上下文中不起作用,现在已在原始代码中添加post@djcamo-
      JSON.stringify
      永远不会生成您引用的JSON。它永远不会在字符串文本中生成包含回车符或换行符的字符串(只是等效的转义序列)。你到底想用你的
      替换
      做什么?我猜了一下你想在上面做什么。为不清楚道歉,我只是一个通过示例学习的黑客程序员,因为现在我所追求的是格式正确的json数据,因此我将其附加到HTML元素,以便我可以看到它的外观,所以,是的,我正试图消除等效的逃逸sequences@djcamo-啊!如果您想查看格式正确的JSON数据,这与我上面的编辑不同。稍等…:-)
      
      var htmlToDisplay = jsonData
          .replace(/&/g, "&")
          .replace(/</g, "&lt;");