如何检查我是否在浏览器中运行JavaScript代码?

时间:2014-04-25 20:50:22

标签: javascript

如何检查我是否在浏览器中运行此代码? 我有类似的东西

var x = 5;
if(/*inside a browser*/) document.write(x);  
else/*without a browser*/ console.log(x);

4 个答案:

答案 0 :(得分:1)

以下是检测节点与浏览器的方法:

var inside_browser = (typeof module === 'undefined');

如果您没有定义模块,它将起作用。

答案 1 :(得分:1)

if (typeof(window) != 'undefined') {
   //i am inside of browser environment
} else {
   //i am elsewhere (server?)
}

答案 2 :(得分:0)

<script type="text/javascript">
    document.write("Welcome, you have Javascript on.")
</script>

<noscript>JavaScript is off. Please enable to view full site.</noscript>

答案 3 :(得分:0)

编辑:

比下面提到的更简单的解决方案就是调用(this.window).

其他答案假设您在浏览器中询问服务器(ex node.js)侧JS vs。但是,我最初的想法是你询问如何检测是否在javascript控制台中运行了某些内容。这将是我的方法:

(function(){

    var _z = console;
    Object.defineProperty( window, "console", {
    get : function(){
        if( _z._commandLineAPI ){
        return true;
            }
        return false; 
    },
    set : function(val){
        _z = val;
    }
    });

})();

根据KSpace blog修改了您的目的。