json字符串转json对象时包含“”,使用JSON.parse报错情况

it2025-10-08  3

javascript中的json中包含转义字符\斜杠

//--------------------------- //参考网页https://www.cnblogs.com/jun-tao/p/3707663.html /* 大家可以试一下写1个\斜杠,或者写2个\斜杠,或者写3个\斜杠,或者写,4个\斜杠,再分 别使用JSON.parse()函数解析一下,效果有很大的不同,有的会报错,有的能正确解析 */ var jsonStr27 = '{"sex":"男","info":"我\\是超人"}'; // 2个\斜杠 var jsonObj75 = eval("(" + jsonStr27 + ")"); //正确 console.log(jsonObj75.sex, jsonObj75.info);//结果为男 我是超人 // var jsonObj76 = JSON.parse(jsonStr27);//报错 // console.log(jsonObj76.sex, jsonObj76.info); var jsonStr68 = '{"sex":"男","info":"我\是超人"}';// 1个\斜杠 var jsonObj90 = eval("(" + jsonStr68 + ")");//正确 var jsonObj77 = JSON.parse(jsonStr68);//正确 console.log(jsonObj77.sex, jsonObj77.info);//结果为男 我是超人 var jsonStr69 = '{"sex":"男","info":"我\\\是超人"}';// 3个\斜杠 var jsonObj91 = eval("(" + jsonStr69 + ")");//正确 // var jsonObj78 = JSON.parse(jsonStr69);//报错 // console.log(jsonObj78.sex, jsonObj78.info); var jsonStr70 = '{"sex":"男","info":"我\\\\是超人"}';// 4个\斜杠 var jsonObj92 = eval("(" + jsonStr70 + ")");//正确 var jsonObj79 = JSON.parse(jsonStr70);//正确 console.log(jsonObj79.sex, jsonObj79.info);//结果为男 我\是超人 //--------------------------------- var jsonStr28 = {"sex":"男","info":"我\\是咸蛋超人"}; console.log(jsonStr28.sex, jsonStr28.info);//结果为男 我\是咸蛋超人 var jsonStr29 = {"sex":"男","info":"我\是孙悟空"}; console.log(jsonStr29.sex, jsonStr29.info);//结果为男 我是孙悟空 var jsonStr30 = {"sex":"男","info":"我\\\是康熙"}; console.log(jsonStr30.sex, jsonStr30.info);//结果为男 我\是康熙 var jsonStr31 = {"sex":"男","info":"我\\\\是小宝"}; console.log(jsonStr31.sex, jsonStr31.info);//结果为男 我\\是小宝
最新回复(0)