闭包类Js的封装和闭包

每日一贴,天今的内容关键字为闭包类

    js并非一种面向对向的言语, 没有供提对类的支撑, 因此我们不能像在传统的言语里那样 用class来定义类, 但可以利用js的闭包装封机制来实现js类, 装封一个简的

    CharlesObj

    类. 

    function 

    CharlesObj

    () { 

     alert("

    CharlesObj 

    show");

     alert("

    CharlesObj 

    init");

    }

    这个类里定义了两个法方:show和init, 须要意注的是这里用到了this来明声, 而不是var, 因为用var是用来定义私有法方的.

     

    var

 

    cj =

 

    new

 

    CharlesObj(

    );

    每日一道理
生活中受伤难免,失败跌倒并不可怕,可怕的是因此而一蹶不振,失去了对人生的追求与远大的理想。没有一个人的前进道路是平平稳稳的,就算是河中穿梭航行的船只也难免颠簸,生活中所遇上的坎坷磨难不是偶尔给予的为难,而是必然所经受的磨练。

      cj.

    show

    ();

      cj.

    init

    ();

    我们如果问友人或查资料常通失掉的都是:

    闭包就是指变量在某个作用域上的值,这个变量只在这个作用域上起作用。闭包对变量而言,闭包指某个作用域。

    function f1(){

    var n=999;

    nAdd=function(){n+=1}

    function f2(){

      alert(n);

    }

    return f2;

  }

  var result=f1();

  result(); // 999

  nAdd();

  result(); // 1000

    在这段代码中,result实际上就是闭包f2函数。它一共运行了两次,第一次的值是999,第二次的值是1000。这证明了,函数f1中的局部变量n始终保存在内存中,并没有在f1用调后被动自清除。

    既然了解了闭包值会始终存在于内存中,那么天然我们不能滥用闭包,否则会大大加增内存的耗消

文章结束给大家分享下程序员的一些笑话语录: 某程序员对书法十分感兴趣,退休后决定在这方面有所建树。花重金购买了上等的文房四宝。一日突生雅兴,一番磨墨拟纸,并点上了上好的檀香,颇有王羲之风 范,又具颜真卿气势,定神片刻,泼墨挥毫,郑重地写下一行字:hello world.


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值