ASP Json Parser修正版
更新時(shí)間:2009年12月06日 00:59:10 作者:
之前因?yàn)橐胘son,在網(wǎng)上,json Generator就不少,但是,parser鮮有后來,在一個(gè)老外的啟發(fā)下,寫了一個(gè)praser,其實(shí)超簡(jiǎn)單,就是利用了JS的eval來parse,然后,把對(duì)象再返回給vbscript代碼。
但后來用的時(shí)候,發(fā)現(xiàn)一個(gè)問題,如果json比較單純,就沒什么問題,如果json中含有數(shù)組,由于vbs是不可以直接引用js中數(shù)組元素的,所以,導(dǎo)致無法訪問json對(duì)象中的數(shù)組元素。試過很多種辦法,pop啦,之類的,都不行。再查網(wǎng)上,也無果。
郁悶很久, 轉(zhuǎn)而搜索"vbscript how to access javascript array",竟然給我找到一篇老外的文章。經(jīng)過調(diào)試,發(fā)現(xiàn)老外的辦法不錯(cuò)。訪問不了的原因是沒有定義相應(yīng)的get方法。轉(zhuǎn)而加入他這個(gè)get索引器,一試,ok了。
代碼如下:
asp json parser
代碼
<script language="javascript" runat="server">
Array.prototype.get = function(prop)
{
return this[prop];
}
function parseToJson(json_data)
{
eval("var o=" + json_data);
return (o);
}
</script>
郁悶很久, 轉(zhuǎn)而搜索"vbscript how to access javascript array",竟然給我找到一篇老外的文章。經(jīng)過調(diào)試,發(fā)現(xiàn)老外的辦法不錯(cuò)。訪問不了的原因是沒有定義相應(yīng)的get方法。轉(zhuǎn)而加入他這個(gè)get索引器,一試,ok了。
代碼如下:
asp json parser
代碼
復(fù)制代碼 代碼如下:
<script language="javascript" runat="server">
Array.prototype.get = function(prop)
{
return this[prop];
}
function parseToJson(json_data)
{
eval("var o=" + json_data);
return (o);
}
</script>
相關(guān)文章
javascript 循環(huán)讀取JSON數(shù)據(jù)的代碼
服務(wù)端向客戶端返回了一串JSON格式的數(shù)據(jù)。在有些時(shí)候,因?yàn)槟承┨厥獾脑蛭覀儾恢涝嫉膋ey值,因此我們此時(shí)無法象正常一樣通過key值,來獲取value值。這時(shí)我們必須循環(huán)讀取JSON對(duì)象數(shù)據(jù)。廢話少說,來看例子。2010-07-07
JS對(duì)象與JSON格式數(shù)據(jù)相互轉(zhuǎn)換
最近遇到這個(gè)問題,JS對(duì)象和JSON格式數(shù)據(jù)的相互轉(zhuǎn)換。其實(shí),也就是兩個(gè)問題:JS對(duì)象轉(zhuǎn)換成為JSON格式數(shù)據(jù)、JSON格式數(shù)據(jù)轉(zhuǎn)換成為JS對(duì)象2012-02-02
js解析與序列化json數(shù)據(jù)(一)json.stringify()的基本用法
對(duì)象有兩個(gè)方法:stringify()和parse()。在最簡(jiǎn)單的情況下,這兩個(gè)方法分別用于把JavaScript對(duì)象序列化為JSON字符串和把JSON字符串解析為原生JavaScript2013-02-02
寫給小白學(xué)習(xí)的地理信息的表示法GeoJSON
這篇文章主要為大家介紹了寫給小白學(xué)習(xí)的地理信息的表示法GeoJSON的詳細(xì)實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05
JS解析后臺(tái)返回的JSON格式數(shù)據(jù)實(shí)例
今天小編就為大家分享一篇JS解析后臺(tái)返回的JSON格式數(shù)據(jù)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-08-08

