`
weina
  • 浏览: 142081 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

js 模式

    博客分类:
  • js
 
阅读更多

1、JavaScript 要通过原型链来实现继承:

function  Employee(first, last, position) {  
  // call the superclass constructor   
  Person.call(this , first, last);  
  this .position = position;  
};  
// inherit from Person   
Employee.prototype = Object.create(Person.prototype);  
Employee.prototype.constructor = Employee;  
  
// define an overridding toString() method   
Employee.prototype.toString = function () {  
  // call superclass's overridden toString() method   
  return  Person.prototype.toString.call( this ) +  
         ' is a '  +  this .position;  
}; 

2、发布订阅模式

var  event = ( function () {  
  
  // private variables   
  var  listeners = [];  
  
  function  addEventListener(f) {  
    listeners.push(f);  
  }  
  
  function  clearEventListeners() {  
    listeners = [];  
  }  
  
  // ...   
  
  // export the module's API   
  return  {  
    addEventListener: addEventListener,  
    clearEventListeners: clearEventListeners  
    // ...   
 };  
}()); 

3、js 闭包实现

for  ( var  i=0, ilen=elements.length; i<ilen; i++) {  
  var  element = elements[i];  
  (function (num) {  
    LIB_addEventListener(element, 'click' function (event) {  
      alert('I was originally number '  + num);  
    });  
  }(i));  

4、js 取得参数

function (a, b, option) {  
  option = arguments.length > 2 ? option : {};  
  // ...   

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics