JavaScript定义全局对象的方法示例
本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《javascript面向对象入门教程》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript中json操作技巧总结》、《JavaScript错误与调试技巧总结》及《JavaScript数学运算用法总结》
希望本文所述对大家JavaScript程序设计有所帮助。
相关文章
js插件设置innerHTML时在IE8下提示“未知运行时错误”解决方法
这篇文章主要介绍了js插件设置innerHTML时在IE8下提示“未知运行时错误”解决方法,较为详细的分析了错误的原因及对应的解决方法,需要的朋友可以参考下2015-04-04通过seajs实现JavaScript的模块开发及按模块加载
seajs实现了JavaScript 的 模块开发及按模块加载。用来解决繁琐的js命名冲突,文件依赖等问题,其主要目的是令JavaScript开发模块化并可以轻松愉悦进行加载。下面我们来一起深入学习下吧2019-06-06
最新评论