[英]Expected property name or '}' parsing a string with Json Parse
我嘗試將字符串解析為 Json 時遇到一個奇怪的問題。在數據庫中,json 以下列方式保存
{'Sales Package': '1 Ring, 1 Ring Gift Box, Ring Certificate'}
typeof = string
當我嘗試使用 Object.keys 時,它不起作用,因為它被視為一個字符串。 如果我嘗試解析它,我會收到以下錯誤
{'Sales Package': '1 Ring, 1 Ring Gift Box, Ring Certificate'}
[1] ^
[1]
[1] SyntaxError: Expected property name or '}' in JSON at position 1
我的代碼
metaData.meta_data.attributes.forEach((attribute: string) => {
console.log(JSON.parse(attribute));
console.log(attribute);
//console.log(Object.keys(attribute));
});
解決方案的想法? 我已經搜索過類似的問題,但它們對我沒有用
如果必須存儲單引號,請在解析前將其替換為雙引號。
第一個 replaceALL 只是將任何雙引號替換為"
對於像英寸等使用雙引號的情況。
第二個然后用雙引號替換單引號。
let str = "{'Sales Package': '1 Ring, 1 Ring Gift Box, Ring Certificate'}"; str = str.replaceAll("\"", """) str = str.replaceAll("'","\""); console.log(JSON.parse(str));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.