[英]How to convert unicode string to JSON?
我想將下面的 unicode 字符串轉換為 JSON Object。
var str = '{"method_title":"Bank. Transfer","instructions":"Account Name: Sriram Me Co.,Ltd.\r\n----------------------------------------------\r\n- Furnin Commercial Bank\r\nAccount: 111-111-111\r\n----------------------------------------------\r\n- LIKSA Bank\r\nAccount: 111-111-111r\n----------------------------------------------\r\n\r\nAfter you have made bank transfer, please kindly visit \"PAYMENT\" to submit your payment detail."}';
以下是我遵循的方法
var myEscapedJSONString = decodeURIComponent(str);
console.log(JSON.parse(myEscapedJSONString));
我收到以下錯誤:
Uncaught SyntaxError: Unexpected token in JSON at position 82
decodeURIComponent
在這里倒閉了。
要使用JSON.parse
,格式必須正確。
因此,在這里,您必須首先使用.replace(/(\r\n|\n|\r)/gm,"")
類的內容刪除換行符。
然后下一個問題是"PAYMENT"
,這里不能出現雙引號,所以可以用.replace(/"PAYMENT"/g, 'PAYMENT');
去掉
const str = '{"method_title":"Bank. Transfer","instructions":"Account Name: Sriram Me Co.,Ltd.\r\n----------------------------------------------\r\n- Furnin Commercial Bank\r\nAccount: 111-111-111\r\n----------------------------------------------\r\n- LIKSA Bank\r\nAccount: 111-111-111r\n----------------------------------------------\r\n\r\nAfter you have made bank transfer, please kindly visit \"PAYMENT\" to submit your payment detail."}'; const cleaned = str.replace(/(\r\n|\n|\r)/gm, "").replace(/"PAYMENT"/g, 'PAYMENT'); console.log(JSON.parse(cleaned));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.