• javascript闭包应用收集中...


    闭包可以用优雅的方式来处理一些棘手的问题,有些程序员声称没有闭包简直就活不下去了。这虽然有些夸张,却从侧面说明闭包有着强大的功能。下面列举了一些闭包应用。

    1、通过闭包修正事件注册时的this指针

    Code

    2、利用闭包加强模块化

    闭包有益于模块化编程,它能以简单的方式开发较小的模块,从而提高开发速度和程序的可复用性。和没有使用闭包的程序相比,使用闭包可将模块划分得更小。比 如我们要计算一个数组中所有数字的和,这只需要循环遍历数组,把遍历到的数字加起来就行了。如果现在要计算所有元素的积呢?要打印所有的元素呢?解决这些 问题都要对数组进行遍历,如果是在不支持闭包的语言中,我们不得不一次又一次重复地写循环语句。而这在支持闭包的语言中是不必要的.

    javascript 闭包模块化

    3、抽象,闭包是数据和行为的组合,这使得闭包具有较好抽象能力,下面的代码通过闭包来模拟面向对象编程的单例模式。

    MyNamespace.Singleton=(function(){
        
    //private methods
        var privateAttribute1=false;
        
    var privateAttribute2=true;
        
    function privateMethod(){
            
        }

        
    return {//public members
            publicAttribute1:true,
            publicAttribute2:
    10,
            method1:
    function(){
                
            }
    ,
            method12:
    function(){
                
            }

        }

    }
    )();


    大家还有什么新的应用,可以分享下,由于我被屏蔽首页,只能发在新手区了,希望管理员能取消我的屏蔽

  • 相关阅读:
    第10组 Alpha冲刺 (4/6)(组长)
    Android菜鸟成长记10 ListVew
    Android菜鸟成长记3activity类
    Android菜鸟成长记2内部类
    Android菜鸟成长记7 Android的五大布局
    Android菜鸟成长记4button点击事件
    Android菜鸟成长记8 布局实践(微信界面的编写)
    Android菜鸟成长记9 selector的用法
    Android菜鸟成长记6 网络连接的检查
    Android菜鸟成长记5ADB和sqllite
  • 原文地址:https://www.cnblogs.com/lyk831216/p/1423058.html
Copyright © 2020-2023  润新知