相關(guān)資訊
- 《戰(zhàn)國(guó)無(wú)雙4-2》怎么換服裝?戰(zhàn)國(guó)無(wú)
- 關(guān)于責(zé)任的名言警句大全
- 《戰(zhàn)國(guó)無(wú)雙4-2》PC版如何聯(lián)機(jī)? 戰(zhàn)
- 戰(zhàn)國(guó)無(wú)雙4-2技能覺(jué)醒牛逼嗎 全新
- 《戰(zhàn)國(guó)無(wú)雙4-2》手柄無(wú)效怎么解決
- 戰(zhàn)國(guó)無(wú)雙4-2如何設(shè)置語(yǔ)言 戰(zhàn)國(guó)無(wú)雙
- 戰(zhàn)國(guó)無(wú)雙4-2怎么樣跳過(guò)進(jìn)入開(kāi)場(chǎng)動(dòng)畫(huà)
- 什么是應(yīng)屆生畢業(yè)生
- 應(yīng)屆生簡(jiǎn)歷自我評(píng)價(jià)
- 應(yīng)屆生簡(jiǎn)歷怎么寫(xiě)
本類常用軟件
-
福建農(nóng)村信用社手機(jī)銀行客戶端下載下載量:584204
-
Windows優(yōu)化大師下載量:416896
-
90美女秀(視頻聊天軟件)下載量:366961
-
廣西農(nóng)村信用社手機(jī)銀行客戶端下載下載量:365699
-
快播手機(jī)版下載量:325855
本文提供的是作者個(gè)人對(duì)scripting.dictionary的研究經(jīng)驗(yàn)分享,希望對(duì)大家能夠有所幫助。
關(guān)于script的dictionary對(duì)象,其實(shí)我想一開(kāi)始ms是借鑒了python之類的動(dòng)態(tài)腳本語(yǔ)言的,而且是面對(duì)客戶端開(kāi)發(fā)的關(guān)于這一點(diǎn)可以參考wrox的asp程序員參考手冊(cè)里第137頁(yè)里,如果在session級(jí)保存一個(gè)dictionary對(duì)象會(huì)降低系統(tǒng)的性能,而在application級(jí)保存一個(gè)dictionary對(duì)象會(huì)導(dǎo)致web服務(wù)器崩潰,關(guān)于這個(gè)就不在多說(shuō)了。
現(xiàn)在我們要考慮的是dictionary對(duì)象在單頁(yè)的時(shí)候,有哪些設(shè)計(jì)時(shí)的缺陷:
大家可以這么試試
set rs=server.createobject("adodb.recordset")
sql="select * from table"
rs.open sql,conn,1,3
set ttt=server.createobject("scripting.dictionary")
ttt.add "xxx",rs("field")
set rs=nothing
liu=ttt("xxx")
當(dāng)你這么做的時(shí)候會(huì)發(fā)現(xiàn)一件什么事呢?asp頁(yè)會(huì)告訴你發(fā)生意外!。∵@個(gè)就很令人詫異了,什么是意外呢?很難說(shuō),后來(lái)經(jīng)過(guò)我反復(fù)的測(cè)試發(fā)現(xiàn)是因?yàn)椴荒馨裷s("field")的值直接給dictionary對(duì)象,經(jīng)過(guò)反復(fù)研究得出的結(jié)論是如下的:dictionry是把rs("field")的內(nèi)存地址給儲(chǔ)存了,這樣的話,我剛才寫(xiě)的那個(gè)無(wú)疑是一種災(zāi)難,解決方法是把這個(gè)rs("field")放到一個(gè)變量里就可以解決了,但是dictionary對(duì)象難道不可以保存一個(gè)被nothing過(guò)的對(duì)象么?這個(gè)就是一個(gè)很大的疑問(wèn)了,所以我又寫(xiě)了這么一段程序,大家可以保存成try.htm看看效果的
<script language='vbscript'>
set ttt=createobject("scripting.dictionary")
ttt.add "liu","uuu"
set ddd=createobject("scripting.dictionary")
ddd.add "ppp",ttt
set ttt=nothing
bbb=ddd("ppp")("liu")
alert(bbb)
</script>
結(jié)果是什么?你會(huì)發(fā)現(xiàn)一段alert了uuu說(shuō)明是沒(méi)有問(wèn)題的,這就說(shuō)明dictionary對(duì)象其實(shí)是把另一個(gè)dictionary對(duì)象整個(gè)clone進(jìn)來(lái)了,這就更驗(yàn)證了wrox的書(shū)中寫(xiě)的,dictionary對(duì)象在ms開(kāi)發(fā)的時(shí)候其實(shí)是針對(duì)客戶端的,這種說(shuō)法了
還有對(duì)數(shù)組與dictionary合用的代碼也可以給大家看看的
<script language='vbscript'>
i=1
picname=("xxx")
str="set " & "pic_" & i & "=createobject(" & """" & "scripting.dictionary" & """" & ")"
execute(str)
str="pic_" & i & ".add " & """" & "picname" & """" & "," & """" & picname & """"
execute(str)
dim ttt()
redim ttt(5)
ttt(0)="uuu"
pic_1.add "item",ttt
liu=pic_1("picname")
set pic_2=createobject("scripting.dictionary")
erase ttt
redim ttt(5)
ttt(0)="iii"
nnn=pic_1("item")(0)
pic_2.add "rrr",ttt
zzz=pic_2("rrr")(0)
alert(liu)
alert(nnn)
alert(zzz)
</script>