多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > web前端 > jscript > Mootools中使用extend和implement給你的函數擴展功能或方法

Mootools中使用extend和implement給你的函數擴展功能或方法

來源:程序員人生   發布時間:2014-02-16 19:46:33 閱讀次數:3016次

當然了,所謂的給函數擴展功能或方法指的是不修改原函數的前提下.
很多人都知道Mootools面向對象的機制不錯,不過多數人都把面向對象理解錯了,認為面向對象就是類,其實不然,面向對象的范圍是非常廣的.

那么我的這篇文章實際上就是面向對象的一種應用,只不過這個對象是一個function,而并非class.

//給指定Function擴展新的方法或屬性
var Fun=function(){
  alert('a')
};
Fun.extend({
  aa:function(){
    alert('b');
  }
});
Fun();
Fun.aa();

在上邊這段代碼中函數Fun唯一的用途就是用來輸出a這個字符,此時我們把這個函數理解成是一個對象,那如果我們要給這個函數增加一個新的方法,讓他除了能輸出a之外還能輸出b

因此我就是用了extend對Fun這個對象進行了一次方法擴展,注意擴展之后的方法調用的時候會略有不同.

下邊的例子同時演示了如何擴展屬性和方法.

var arr=[];
var Fun=function(){
arr=[1,2];
};
Fun.extend({
len:function(){//給Fun擴展屬性
return arr.length;
},
add:function(val){//給Fun擴展方法
arr.push(val);
}
});

var a=Fun.len(arr);
alert(a+'|'+arr);//此時輸出:0|

Fun();//調用此函數給arr賦值

var a=Fun.len();
alert(a+'|'+arr);//此時輸出:2|1,2

Fun.add('新的');

var a=Fun.len();
alert(a+'|'+arr);//此時輸出:3|1,2,新的

Fun.add(['a','b','c']);

var a=Fun.len();
alert(a+'|'+arr);//此時輸出:4|1,2,新的,a,b,c

len是我擴展的屬性,用來取得arr的length數,而add則是一個方法,用來給arr這個array添加新的值

implement是用來給所有的函數擴展方法的,其實很好理解,我們已經知道在Mootools中有pass,bind,delay等等的方法,這些方法都是Mootools為我們預定義的

但是如果你在實際開發過程中發現他為我們預定義的方法不能滿足我們的需求,此時怎么辦呢,很簡單,只要自己擴展就好了,看下邊:

//擴展新的Function
var a=function(){};
var b=function(){};
Function.implement({
alert:function(msg){//直接alert輸出內容
alert(msg);
},
output:function(msg){//firebug的控制臺會輸出內容,IE會報錯
console.log(msg);
}
});
a.alert('1');
a.output('2');
b.output('3');

看過這篇文章之后您是否對Mootools的面向對象有了一個新的認識呢?

(文章來源:http://see7di.cnblogs.com)

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 中国jizz妇女jizz妇女 | 最近中文字幕国语完整在线5 | 免费在线亚洲 | 牛和人交videos欧美3d | 国产精品一区二区综合 | 一级空姐毛片 | 国产亚洲小视频 | www.97影院| 午夜三级理论在线观看视频 | 18videosex性加拿大 | 日本欧美一区二区三区不卡视频 | 欧美成人性生活 | 亚欧成人中文字幕一区 | 国产自产c区 | jizz毛片| free性video另类重口 | 亚洲自拍偷拍网 | 欧美一级aa免费毛片 | 一级毛片一级毛片a毛片欧美 | 国内自拍视频网站 | 精品久久精品久久 | 91久久澡人人爽人人添 | 黄色a网站| 精品国产亚一区二区三区 | 一级做a爱过程免费视频超级 | 午夜欧美性欧美 | japanese18—23护士 | 亚洲精品一区亚洲精品 | 手机在线免费视频 | 欧美人与动性行为另类 | 国产成人一区二区三区精品久久 | 中文一区在线观看 | 欧美18毛片 | 国产精品外围在线观看 | 亚洲乱码中文字幕综合 | 免费视频网站在线看视频 | 法国18sexxxx性xxx | 欧美影院一区二区三区 | 黄网址大全免费观看免费 | 亚洲免费黄网 | 日本wwwwwwwww |