首页 > 其他 > 详细

模块模式——方法

时间:2015-04-14 00:22:42      阅读:170      评论:0      收藏:0      [点我收藏+]
var prison = (function(){
  var prisoner_name = ‘WangMing‘,
      jail_term = ‘20 year term‘;

  // 返回一个有两个方法的对象
  return {
    // 每次调用prisoner()时,会重新查找prisoner_name和jail_term
    prisoner: function () {
      return prisoner_name + ‘-‘ + jail_term;
    },
    // 每次调用setJailTerm时,会查找并设置jail_term
    setJailTerm: function ( term ) {
      jail_term = term;
    }
  };
})();

// this outputs ‘WangMing-20 year term‘
console.log( prison.prisoner() );
prison.setJailTerm( ‘Sentence commuted‘ );
// this now outputs ‘WangMing-Sentence commuted‘
console.log( prison.prisoner() );


/*
  尽管自执行匿名函数完成了执行,方法prisoner和setJailTerm仍然可以访问变量变量prisoner_name和jail_term。prisoner_name和jail_term像是prison对象的私有变量。它们只能通过匿名函数返回的对象上的方法来访问,不能在该对象或者原型上直接访问。


*/

 

模块模式——方法

原文:http://www.cnblogs.com/nodejsxxh/p/4423679.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!