Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我的javascript如何确定它是由WScript还是浏览器调用的?_Javascript - Fatal编程技术网

我的javascript如何确定它是由WScript还是浏览器调用的?

我的javascript如何确定它是由WScript还是浏览器调用的?,javascript,Javascript,我正在尝试编写一个javascript程序,可以从WScript或浏览器(嵌入html)调用该程序。许多javascript函数独立于调用方的类型,但不依赖于调试函数,如“window.write”或“WScript.alert” 我知道javascript函数可以确定调用方的名称,但不能确定javascript主程序的名称 案例1:调用方是WScript,WScript sample.js 案例2:调用方是浏览器 sample.js如何确定它是由WScript还是由浏览器调用的?您可以通过检查

我正在尝试编写一个javascript程序,可以从WScript或浏览器(嵌入html)调用该程序。许多javascript函数独立于调用方的类型,但不依赖于调试函数,如“window.write”或“WScript.alert”

我知道javascript函数可以确定调用方的名称,但不能确定javascript主程序的名称

案例1:调用方是WScript,WScript sample.js

案例2:调用方是浏览器


sample.js如何确定它是由WScript还是由浏览器调用的?

您可以通过检查是否存在WScript/window对象来检查脚本是从WScript还是从浏览器调用的。浏览器没有内置WScript对象,WScript脚本通常无权访问窗口对象(除非您创建它)

例如

function Test()
{
    if(typeof WScript!= "undefined")
    {
        WScript.Echo("Hello WScript!");
    }
    else if (typeof window != "undefined")
    {
        alert("Hello browser!");
    }
}