在cscript.exe中的JScript类型参数



我试图编写一个JScript函数,接受可由cscript.exe执行的可变数量的参数。根据微软文档http://msdn.microsoft.com/en-us/library/7yy9shf1(v=vs.90).aspx最后一个函数参数可以是一个数组,但它必须是数组类型。试过之后,cscript.exe抱怨":"附近有语法错误。

然后我尝试了一个更简单的例子,只有一个类型参数:

<job id="Test">
<script language="JScript">
    // Declare a function that takes an int and returns a String.
    function Ordinal(num : int) : String{
       switch(num % 10) {
       case 1: return num + "st";
       case 2: return num + "nd";
       case 3: return num + "rd";
       default: return num + "th";
       }
    }
    // Test the function.
    print(Ordinal(42));
    print(Ordinal(1));
</script>
</job>

保存为test.wsf,并执行:

cscript.exe //NoLogo test.wsf

仍然得到相同的错误。是cscript.exe不能使用类型参数(和变量参数函数)?

(Plain) C/WScript.exe主机执行的JScript是(非常)弱类型的。特别是,它不支持类型参数(就像它的近亲JScript一样)。净)。

最新更新