1

我知道如果 language="JScript" 可以使用以 VBScript 编码的函数,如下所示:

<%@ language="JScript" %>
<% Response.Write(myFunc()); %>
<script runat="server" language="vbscript">
    Function myFunc
        myFunc="test"
    End Function
</script>

但是,在用 JScript 重构脚本之前,我想知道,假设语言设置为 VBScript,是否还有可能在 JScript 中使用 VBScript 函数。或者,在这种情况下,只有相反的方式是可能的。

谢谢!

4

1 回答 1

2

在使用 jscript、vbscript 和 Python 之前,我已经对此进行了测试。可以从另一种语言的代码块中调用一种语言的函数并使用结果。

不过有一些注意事项:

您需要确保函数返回其他语言可以识别的类型;因此将 Python 对象返回到 vbscript 将不起作用,但如果您使用字符串、数字和布尔值等简单类型,则可以。我认为即使是数组也可以在 vbscript 和 jscript 之间工作。

第二个要考虑的是,脚本在服务器上的处理顺序是有先后顺序的;我不再确切知道它是什么,但 ASP 将首先处理一种语言,然后再处理另一种。
当您的代码以不同的语言调用函数并且找不到该函数时,这可能会导致奇怪的事情发生,因为 ASP 仍需要处理该函数的语言。

只要您在函数中执行并确保仅使用一种特定语言在这些函数之外编写代码,这应该不是问题。

以下是有关执行顺序的更多信息:http ://www.kidslovepc.com/asp/order_execution.shtml

于 2012-08-29T10:09:40.450 回答