本文實例講述了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.namemyObj.__a();//myObj.__a
這些定義方法相對比較獨立,可以當作黨都功能模塊保存、使用。
類似 Jquery 的插件寫法。
更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《javascript面向對象入門教程》、《JavaScript查找算法技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript中json操作技巧總結》、《JavaScript錯誤與調試技巧總結》及《JavaScript數學運算用法總結》
希望本文所述對大家JavaScript程序設計有所幫助。
新聞熱點
疑難解答