星空网 > 软件开发 > Java

Js~(function(){})匿名自执行方法的作用

匿名自执行方法体(function(){})经常用在设计JS插件上面,它定义相关组件的行为,自动初始化相关属性,而且在页面中可以直接执行,你不需要手动执行它,它被自动被执行!

在设计你的匿名自执行方法体时,我们有几点需要注意,在这里大叔部总结了一下,请看下面说明

  • 将它的结果赋给一个对象
  • 如果它没有返回值,那希望使用它的内部对象,需要这个对象是公共的(即不可var)
  • 可以将它定义成一个自执行的属性体

具体介绍这三点

将它的结果赋给一个对象

  var ar = (function () {      var PageMap = function () { console.log("初始化") };      PageMap.prototype = {        get: function (page) {          return page;        },        set: function (page, value) {          console.log("set");        },        has: function (page) {          return false;        },        clear: function () {          console.log("clear");        }      };      return PageMap;    })();    var a = new ar();    a.set(1, "OK");

如果它没有返回值,那希望使用它的内部对象,需要这个对象是公共的

 (function (option) {      option = option || { id: 0, pages: [] };      var pages = [];      Maps = function () {        console.log("maps init...");      };      //扩展方法      Maps.prototype = {        keys: function () {          return pages[id] != undefined;        },        get: function (id) {          return pages[id];        },        set: function (value) {          pages.splice(value);          pages.push(value);        },        append: function (value) {          pages.push(value);        },        each: function () {          console.log("eache pages result");          for (var item in pages)            console.log(pages[item]);        }      };    })();    var arr = new Maps();    arr.append(1);    arr.append(2);    arr.append(3);    arr.each();

可以将它定义成一个自执行的属性体

    var test = ({      // 这里你可以定义常量,设置其它值, 自动运行      width: 480,      height: 640,      // 当然也可以定义utility方法      getMax: function () {        return this.width + "x" + this.height;      },      // 初始化      init: function () {        console.log(this.getMax());        // 更多代码...      },      print: function () {        console.log(this.getMax());      }    }); // 这样就开始初始化咯    test.init();    test.print();

而对于以后我们的JS组件的设计,可以很好的利用它的这些特点,即自执行

 




原标题:Js~(function(){})匿名自执行方法的作用

关键词:JS

JS
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

如何实施对你和你的客户都是双赢的退货政策(上):https://www.ikjzd.com/articles/133260
卖家快看!假冒产品最多的品类有这些!:https://www.ikjzd.com/articles/133261
盘点:印尼最火爆的电商节点是哪些时候:https://www.ikjzd.com/articles/133262
盘点:印尼最火爆的电商节点是哪些时候:https://www.ikjzd.com/articles/133263
盘点:印尼最火爆的电商节点是哪些时候:https://www.ikjzd.com/articles/133264
盘点:印尼最火爆的电商节点是哪些时候:https://www.ikjzd.com/articles/133265
浏阳市里面哪里好玩的地方 浏阳市内有什么好玩的地方:https://www.vstour.cn/a/404233.html
你心目中的十大旅游景点有哪些?:https://www.vstour.cn/a/404234.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流