Javascript 无法使用java脚本从Json读取键/值

Javascript 无法使用java脚本从Json读取键/值,javascript,json,Javascript,Json,我有一个JSON,我必须从中读取我能够成功使用JSON.Parse执行的值。问题是在一种情况下,当我在中测试密钥CurrentAddress时,它无效。我计划仅检索该值,然后从JSON中删除它。我检查了堆栈溢出,并获取了检索该值的代码。但我得到了错误 无法获取属性“CurrentAddress”的值:对象为null或未定义。我知道该对象为null或未定义,但当我看到代码时,该对象将填充以下JSON详细信息 {"CardDetails":{"NameEn":"HASSAN ", "NameAr":

我有一个JSON,我必须从中读取我能够成功使用JSON.Parse执行的值。问题是在一种情况下,当我在中测试密钥CurrentAddress时,它无效。我计划仅检索该值,然后从JSON中删除它。我检查了堆栈溢出,并获取了检索该值的代码。但我得到了错误 无法获取属性“CurrentAddress”的值:对象为null或未定义。我知道该对象为null或未定义,但当我看到代码时,该对象将填充以下JSON详细信息

{"CardDetails":{"NameEn":"HASSAN ",
"NameAr":"حسن سالم راشد البطاشي",
"CardID":"099778",
"CardType":"Citizen",
"CardExpiryDate":"25/11/2017",
"BirthDate":"19/08/1980",
"CountryBirthAr":"سلطنة عمان",
"TownOfBirthAr":"مسقط",
"NationalityEn":"OMANI",
"NationalityAr":"عماني",
"GenderEn":"Male",
"GenderAr":"ذكر",
"OccupationEn":"OFFICE CLERK - GENERAL",
"OccupationAr":"كاتب اداري / عام",
"SponsorNameEn":"",
"SponsorNameAr":"",
"PassportNo":"٠٢٣٦٦٢٠٣",
"PassportExpiryDate":"02/03/2019",
"PassportIssueDate":"03/03/2009",
"PassportCountry":"سلطنة عمان",
"VisaNo":"",
"VisaIssueDate":"",
"VisaExpiryDate":"",
"CurrentAddress":"
المزارع, قـريات
الصندوق البريدي 3168, الرمز البريدي 112",
"CSN":"21400052F296F",
"SAMCSN":"5900002163C73",
"ErrorDescription":""}}
我的Javascript是:

        var jsonString = myAx1.readCardJSON();
        var a = jsonString["CardDetails"].CurrentAddress;
        alert(a);

在这种情况下,我无法使用JSON.Parse,因为currentaddress值显示为无效的

下面的代码有助于删除\n


var myJSONString=jsonString.replace(/[\n\r]/gi',)

myAx1.readCardJSON();此方法做什么?检查其是否无效?@Ayan我不知道为什么,但只有一种情况下数据无效。我使用工具检查了中json的有效性,发现当前地址是问题所在。但我无法确定问题所在。我不懂阿拉伯语。我删除了此字段中的逗号和数字,然后仍然尝试了相同的问题,JSON不能有换行符。CurrentAddress有换行符。您可以手动将它们替换为
jsonString.replace('\n','')
手动将
\n
替换为
\\n
,应该可以工作。