如何检查* .js文件是JScript还是JavaScript?

时间:2018-08-13 19:09:19

标签: javascript wsh jscript

我想同时使用* .js文件:在我的PC上的本地网页上(作为JavaScript)和当我双击* .js文件时作为WSH JScript。可以编写在两个平台上运行的代码吗?

如何检查正在运行的JS文件是JavaScript还是Microsoft JScript?

我尝试过此方法,但不起作用:

if (typeof(document) == "undefined")
    alert('WSH Script!');
    WScript.Quit;
}
else {
    document.writeln('Hello world');
}

3 个答案:

答案 0 :(得分:2)

  1. 您可以检查WScript对象是否存在,例如

    if (typeof WScript === 'object')

  2. Quit是一个函数,因此您应该调用它,例如

    WScript.Quit();

答案 1 :(得分:1)

我要发布正确的代码(感谢Sergii Vorobei):

if (typeof WScript === 'object') {
    WSHshell= WScript.CreateObject("WScript.Shell")
    WSHshell.Popup("WSH Script!")
    WScript.Quit();
}
else {
    document.writeln('Hello world');
}

答案 2 :(得分:0)

另一个不错的技巧:

if (/*@cc_on !@*/0) {
    WScript.StdOut.WriteLine("Hello from JScript");
} else {
    console.log('Hello from NodeJS');
}