摘要:本文实例讲述了JavaScript定义全局对象的方法。分享给大家供大家参考,具体如下:!function (factory) { factory(window['Hi'] = { __a: function () {
本文实例讲述了JavaScript定义全局对象的方法。分享给大家供大家参考,具体如下:
!function (factory) {
factory(window['Hi'] = {
__a: function () {
console.log('Hi.__a');
},
__b: function () {
console.log('Hi.__b');
},
__c: function () {
console.log('Hi.__c');
}
});
}(function (Hi) {
if (typeof Hi === undefined) {
Hi = {};
}
Object.defineProperty(Hi, 'appName', {
get: function () {
return 'this is app name.';
}
})
});
console.log(Hi.appName);//this is app name.
Hi.__b();//Hi.__b通过立即执行函数将对象(Hi)定义函数作为参数(factory)传递给立即执行函数
!function (factory) { }();在立即执行函数中,将要定义的对象作为立即执行函数的参数函数的参数传递。
如下也能实现了相同的对象定义:
var myObj = myObj || {};
(function (myObj) {
myObj.__a = function () {
console.log('myObj.__a');
};
myObj.name = 'this is myObj.name';
})(myObj);
console.log(myObj.name);//this is myObj.name
myObj.__a();//myObj.__a这些定义方法相对比较独立,可以当作党都功能模块保存、使用。
类似 Jquery 的插件写法。
更多关于JavaScript定义全局对象的方法示例请关注PHP中文网(www.php.cn)其他文章!