十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
本文实例讲述了JavaScript定义全局对象的方法。分享给大家供大家参考,具体如下:
成都创新互联是一家专注于做网站、成都做网站与策划设计,巩留网站建设哪家好?成都创新互联做网站,专注于网站建设十余年,网设计领域的专业建站公司;建站业务涵盖:巩留等地区。巩留做网站价格咨询:13518219792
!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程序设计有所帮助。