代码
<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要点,开始函数即是对象的编程,函数式了吧