현재 위치 - 중국 분류 정보 발표 플랫폼 - 비즈니스 서비스 정보 - ASP는 JSON을 어떻게 구문 분석하나요? JS를 사용할 수 있나요?

ASP는 JSON을 어떻게 구문 분석하나요? JS를 사용할 수 있나요?

lt;

Dim?scriptCtrl

Function?parseJSON(json)

If?Not?IsObject(scriptCtrl)?Then Set ?scriptCtrl=Server.CreateObject("MSScriptControl.ScriptControl") scriptCtrl.Language="JScript" scriptCtrl.AddCode?"Array.prototype.get=function(x){return?this[x];};var?result=null ;"

End?If

scriptCtrl.ExecuteStatement?"result="?amp;?json?amp;?";"

Set?parseJSON= scriptCtrl.CodeObject.result

End?Function

Function?chkJSON(s)

scriptCtrl.ExecuteStatement?"var?sxcz=(resultamp;amp;typeof ?result=='object')?('"?amp;?s?amp;?"'?in?result):false;"

chkJSON=scriptCtrl.CodeObject.sxcz

End?Function

gt;

첫 번째 함수인 parseJSON은 JSON 문자열을 객체로 구문 분석하는 데 사용됩니다. 사용법은 다음과 같습니다. lt;

JSON="{xxx:111,yyy:{zzz:222,aaa:'abc',zzz:'qwe'},qqq:[{sss:123,rrr:456},{sss:333,rrr:678 } ]}"

Set?objJSON=parseJSON(JSON)

Response.Write?objJSON.xxx?amp;?"lt;brgt;"

응답 .Write?objJSON.yyy.aaa?amp;?"lt;brgt;"

Response.Write?objJSON.qqq(0).sss?amp;?"lt;brgt;"

Response.Write?objJSON.qqq(0).sss?amp;?"lt;brgt;"

p>

gt;

두 번째 함수 chkJSON이 사용됩니다. JSON에 특정 속성이 존재하는지 감지합니다. VBScript와 JScript의 개체 차이로 인해 개체에 존재하지 않는 속성을 VBScript에서 직접 사용하면 오류가 발생합니다(JScript에서는 발생하지 않음). 따라서 JSON에 특정 속성이 있는지 확실하지 않은 경우. 존재하는 경우 먼저 이 기능을 사용하여 확인하는 것이 가장 좋습니다. 이 기능은 첫 번째 기능을 사용한 후에만 사용할 수 있습니다! 사용법은 다음과 같습니다:lt;

If?chkJSON("mmm")?Then?Response.Write?objJSON.mmm

gt;