有关自定义函数的使用效率问题??

ps800 2019-11-18 03:23:28
比如,我写了一个函数getProductINFO(Pro_number,a)
即:根据Pro_number,获取字段a对应的值,即rs("a")

那么,如果我这个表有20个字段,有30行,那么,需要循环引用该函数的次数为:

从第1行,到第30行,要30行次,并且:每一行都要引用20次

因为每一行都有20个字段,即:
getProductINFO(Pro_number,a),获取a字段的值,第1次
getProductINFO(Pro_number,b),获取b字段的值,第2次
……

这样是不是频繁引用执行函数,效率太低,有许多重复的开销?
感觉还不如,在页面中,一次性读取出来呢?
__________________________________________

还有一个问题:我下载了网上的源码,发现library.asp里的函数。
感觉是,response.Write是ASP官方的语法,而这个作者,却写了一个echo和die函数,来代替。也是为了提升写码效率吗?
这样作有没有必要呢?那是不是理论上来说,任何重复的代码,都可以进一步的写成函数,用来简化工作量?
Sub echo(Str) '过程:输出字符串[代替Response.Write]
response.Write(Str)
End Sub

Sub die(Str) '过程:结束页面并输出字符串
Response.Write(Str)
response.End()
End Sub
_________________________________
最后一个问题,自定义函数文件,一般是通过include引用到别的页面的。假设A页面要引用的include文件是30K,但这30K里,只有一个函数用得上,那么是不是对A页面来说很吃亏呀?(额外无效的加载和资源),有没有什么更好的方法?


谢谢你的解答!再次感谢!!





——————附我写的函数————————

Function getProductINFO(Pro_number,a) '根据商品ID,查询任意字段
set rsA=server.createobject("adodb.recordset")
If isnull(Pro_number) Or Pro_number="" Then
getProductINFO="空!"
Else
sqlA="select * from ProductInfo where Pro_number="&Pro_number
'Response.write sqlA
rsA.open sqlA,conn,1,1
if Not rsA.eof Then
getProductINFO=rsA(a)
Else
getProductINFO="-"
End if
rsA.close
set rsA=Nothing
End if
End Function
...全文
121 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
ps800 2019-11-21
  • 打赏
  • 举报
回复
扔扔扔扔扔扔扔扔

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧