官术网_书友最值得收藏!

2.5 JavaScript中的事件編程

事件編程不僅限于Java和C#這樣的靜態語言,JavaScript就是以事件驅動編程聞名的動態弱類型語言。如果不對沒有類型檢查(和IDE的輸入提示)感到不舒服,JavaScript的動態弱類型和方便函數式編程的性質可以讓代碼極為通用、簡潔和靈活。下面是JavaScript實現自定義事件編程的一種途徑。

將任何對象傳遞給eventify函數,返回的對象就具備了發布事件的能力。添加和刪除收聽者的方法分別為addListener和removeListener,觸發事件的方法為fireEvent。收聽者不再是對象,而僅是一個函數。從發布者傳遞給收聽者的事件信息對象event有兩個屬性type和target,分別為事件的名稱和發布者。另外也可以直接在收聽者內用this關鍵字獲取發布者。下面是應用上述函數的一個簡單例子。person自定義對象從eventify方法返回后聲明了一個hunger事件,收聽者在瀏覽器的控制臺打印出I'm hungery。

主站蜘蛛池模板: 略阳县| 云龙县| 类乌齐县| 湘阴县| 印江| 高台县| 秀山| 泗洪县| 文登市| 拉萨市| 柘城县| 湖北省| 嫩江县| 南平市| 喀什市| 怀来县| 大理市| 仙桃市| 涟水县| 石林| 阳信县| 玉树县| 常宁市| 邢台县| 义马市| 东乡族自治县| 兰坪| 白山市| 丽水市| 永德县| 商都县| 吉安县| 德保县| 渝中区| 宝鸡市| 杂多县| 甘泉县| 武强县| 明水县| 克拉玛依市| 孟津县|