我想學習更多的Javascript,所以我正在讀一些書,並做一些練習練習我正在學習。其中excercises的說以下內容:觀察類,它是什麼,應該做什麼
1 - 創建一個Movie對象:
電影
-attributes:HashMap的
播放()
停止()
set(attr:string,value)
GET(ATTR:字符串)
2 - 添加偵聽 「玩」 和「停」事件MovieObserver類。
我做了以下內容:
function Movie(){
this.attributes = {
title : 'undefined',
duration : '0',
director : 'undefined',
actor : []
}
}
Movie.prototype.set(attr , value){
this.attributes[attr] = value;
}
Movie.prototype.get(){
console.log(this.attributes['title']);
return this.attributes['title'];
}
Movie.prototype.play(){
console.log ('Playing '+this.attributes['title']+'...');
}
Movie.prototype.stop(){
console.log ('Stopped '+this.attributes['title']+'...');
}
什麼,我需要知道的是MovieObserver應該做的事情,我無法理解這一點。
這看起來不是有效的語法。 – elclanrs 2014-09-26 02:13:36
從技術上講,JavaScript沒有類,但基本上它們是作爲函數實現的。你可以這樣做:'像''Movie'一樣操作ClassName(){...}。另外請注意,您想在'attributes'中使用':'而不是'='作爲對象。左邊沒有字符串:'varName:'value''。 – 2014-09-26 02:14:06
http://addyosmani.com/resources/essentialjsdesignpatterns/book/#observerpatternjavascript – sabithpocker 2014-09-26 02:20:04