[英]Keeping quotation marks when using JSON parse
在搜索會產生任何結果時,我一直無法以某種方式表達這個問題,所以如果有明顯的地方被問到,請原諒我。
從字符串轉換時,我希望所有引號都保留在我的 JSON 中。
我的 UI 有一個文本字段(字符串),用戶將輸入一些 JSON,它看起來像這樣:
{ "example": "example" }
我希望所有引號都保留在我的 JSON 對象中。 但是,當我在上面的字符串上運行 JSON.parse() 時,我得到以下信息:
{ example: "example" }
如何防止引用被刪除?
JSON.parse() 返回的 javascript 對象不是 json。 您不需要對象中的引號(除非屬性名稱中有特殊字符)並且可以在代碼中使用或不使用引號訪問該屬性
const myObj = { example: "example" };
以下兩項均有效
console.log(myObject.example)
console.log(myObject["example"])
當您再次使用 JSON.stringify() 時,它將在 json 字符串中包含有效的引號,並且是:
{ "example": "example" }
JSON.parse()
返回一個javascript 對象,因此您得到的結果是正確的。
您的后端需要JSON string ,而不是 javascript 對象,因此您需要JSON.stringify()
您的 javascript 對象以獲取后端所需的 JSON 字符串。
let userinput = '{ "example": "example" }';
let userobject = JSON.parse(userinput);
let resultjson = JSON.stringify(userobject);
console.log(userinput);
console.log(userobject);
console.log(resultjson);
產生
{“示例”:“示例”}
{ 示例:'示例' }
{“示例”:“示例”}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.