代碼
<script type="text/javascript">
YUI().use('event-custom','node', function(Y) { //應用event-custom模塊
function Connector(url) {
(function structure(){ //()()充當Connector的構造子,讓new Connector()時直接執行
Y.augment(Connector, Y.EventTarget); //註冊事件
this.url = url;
})();
//定義一個事件 。
//publish有2個的參數,第二個參數可對事件進行配置,如是否一次性、是否冒泡啊 等等,這裏我使用默認的
//publish 放在 structure()之後
this.publish("evnet:testEvent");
this.url;
this.data;
this.accept = function() {
this.data = url+"123456";
this.fire("event:testEvent",{target:this}); //發佈事件
};
}
var p = new Connector("http://xxxx"); //實例化
p.on("event:testEvent", function(e) { //監聽事件
alert(e.target.data); //alert(" ... 123456")
});
p.accept(); //調用方法,觸發事件
});
</script>
一開始,JQuery以及YUI 讓我很不習慣,.on .one等讓程序多了變數,讓我頓生疑問,感覺靈活性背後的複雜。
之前我還想把jjavascript的編程寫法變爲想JAVA一樣的,現在我的感覺是我徹底錯了,其實他本身就是和java一樣,只不過不需要去限定類型,只要知道對象就是{}就行了
1、javascript的世界都是對象
2、最重要的對象就是函數,
3、p.one是對象,也是函數,p.on也是,同時我們隨便寫一個函數也都是對象
4、心存以上3要點,開始函數即是對象的編程,函數式了吧