欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JavaScript定义全局对象的方法示例

程序员文章站 2022-06-13 14:56:40
本文实例讲述了javascript定义全局对象的方法。分享给大家供大家参考,具体如下: !function (factory) { factory(wind...

本文实例讲述了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程序设计有所帮助。