zoukankan      html  css  js  c++  java
  • js模块化

    在js中借助匿名函数实现功能的模块化

    下面实现一个计算器模块

    计算器得有 加(add) 减() 乘(multi) 除(diliver) 的功能,并且它们应该以  xx.add(1,2)的形式调用

    废话不多说,上代码

    var cal = (function() {
        return {
            'add':function(a,b) {
                return a+b;
            },
            'multi':function(a,b) {
                return a*b;
            }
        };
    })();
    
    console.log(cal.add(1,2));
    console.log(cal.multi(3,4));

    cal模块实现了加和减

    通过cal.add(1,2),cal.multi(1,2)调用cal模块的方法。

    还有一种更清晰的写法,like this

    var cal = (function() {
        var add = function(a,b) {
                return a+b;
            },
            multi = function(a,b) {
                return a*b;
            };
            
        return {
            'add':add,
            'multi':multi
        };
    })();
    
    console.log(cal.add(1,2));
    console.log(cal.multi(3,4));

    或许你还想在模块定义的时候初始化某些东西

    var attr = 'Hello World!';
    var cal = (function(attr) {
        var add = function(a,b) {
                return a+b;
            },
            multi = function(a,b) {
                return a*b;
            },
            getAttr = function() {
                return this.attr;
            };
            
        return {
            'add':add,
            'multi':multi,
            'attr':attr,
            'getAttr':getAttr
        };
    })(attr);
    
    console.log(cal.add(1,2));
    console.log(cal.multi(3,4));
    console.log(cal.getAttr());

    很简单吧。

  • 相关阅读:
    如何使用EF?
    在一般处理程序中使用session
    C# base64 加密解密
    C#操作WMI文章汇总
    ASP.NET图片防盗链(使用一般处理程序)
    前台生成验证码
    .正则
    iframe标签的初试
    sqli-labs5-10(全程sqlmap)
    sql注入文件写入和读取
  • 原文地址:https://www.cnblogs.com/mtima/p/3095947.html
Copyright © 2011-2022 走看看