开发者

How to define a new global object in javascript

开发者 https://www.devze.com 2023-01-20 02:50 出处:网络
Hi It is good practice to create one unique global object that wrap the functions and properties inside this object.I look up a lot of sample code and see code like this

Hi It is good practice to create one unique global object that wrap the functions and properties inside this object.I look up a lot of sample code and see code like this

if(!myglobalObject) mygl开发者_如何学JAVAobalObject ={};

However , this code does not work ,I got an error saying ReferenceError: myglobalObject is not defined Can anyone shed some light on why I got the error?


To avoid errors in ECMAScript 5 strict mode, you need to use var to define all variables:

if (typeof myglobalObject == "undefined") {
    var myglobalObject = {};
}

The other alternative is to assign a property to the global object:

// The following line gets you a global object in any ECMAScript
// environment, so long as it runs in the global scope. In browsers,
// you could just use window.
var globalObj = this;
if (typeof globalObj.myglobalObject == "undefined") {
    globalObj.myglobalObject = {};
}


if (typeof myglobalObject === 'undefined') var myglobalObject = {};


if (window['myglobalObject'] === undefined) window.myglobalObject = {};

If you don't want to expose your object from context you can do smth like this:

var myglobalObject = myglobalObject || {};

0

精彩评论

暂无评论...
验证码 换一张
取 消