亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何處理JSON中的換行符?

如何處理JSON中的換行符?

森林海 2019-07-23 14:39:24
如何處理JSON中的換行符?我已經生成了一些JSON,我試圖將它拉入JavaScript中的對象。我一直在收到錯誤。這就是我所擁有的var data = '{"count" : 1, "stack" : "sometext\n\n"}';var dataObj = eval('('+data+')');這給了我一個錯誤unterminated string literal有了JSON.parse(data),我看到類似的錯誤消息:Unexpected token ?Chrome中的“ unterminated string literal”和Firefox和IE中的“ ”。當我取出\n后sometext,錯誤消失了兩種情況。我似乎無法弄清楚為什么\n制造eval和JSON.parse失敗。
查看完整描述

3 回答

?
德瑪西亞99

TA貢獻1770條經驗 獲得超3個贊

我想這就是你想要的:

var data = '{"count" : 1, "stack" : "sometext\\n\\n"}';

(您需要轉義字符串中的“\”(將其轉換為雙 - “\”),否則它將成為JSON源中的換行符,而不是JSON數據。)


查看完整回答
反對 回復 2019-07-23
?
LEATH

TA貢獻1936條經驗 獲得超7個贊

你需要有它取代的功能\n\\n的情況下,data是不是一個字符串文字。

function jsonEscape(str)  {
    return str.replace(/\n/g, "\\\\n").replace(/\r/g, "\\\\r").replace(/\t/g, "\\\\t");}var data = '{"count" : 1, "stack" : "sometext\n\n"}';var dataObj = JSON.parse(jsonEscape(data));

結果dataObj將是

Object {count: 1, stack: "sometext\n\n"}


查看完整回答
反對 回復 2019-07-23
  • 3 回答
  • 0 關注
  • 2545 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號