GWR*_*GWR 1 vbscript asp-classic
我想完成以下事项:
假设我有一个myFunc(sStr)返回值的函数.
我想动态调用该函数,我相信我可以通过使用vbScript函数eval()或其中一个构建来完成execute().
Function myFunc(fString)
myFunc = "some text in a string. " & fString
End Function
Run Code Online (Sandbox Code Playgroud)
我想通过以下方式调用它:
sDoThis = "response.write myFunc(""blah blah. "")"
execute(sDoThis)
Run Code Online (Sandbox Code Playgroud)
这似乎不起作用(例如我传入要执行的字符串的部分).
我需要要执行的字符串是动态的.
有谁知道这是否可行?
您应该使用GetRef()获取'函数指针'的VBScript变体:
Option Explicit
Function appendString(sAppend)
appendString = "constant head " & sAppend
End Function
Dim oFncPtr : Set oFncPtr = GetRef("appendString")
Dim sFullString : sFullString = oFncPtr("and variable tail")
WScript.Echo sFullString
Run Code Online (Sandbox Code Playgroud)
输出:
constant head and variable tail
Run Code Online (Sandbox Code Playgroud)
这避免了Eval()/ Execute的低效率和安全性风险.
| 归档时间: |
|
| 查看次数: |
1928 次 |
| 最近记录: |