匿名函數
在開始前,我想介紹一下js里的匿名函數,這個在閱讀dojo的源代碼的時候,會發現到處都有匿名函數




匿名函數。一個匿名函數就是一個沒有名字的函數。
你可以認為他們是一次性函數。當你只需要用一次某個函數時,他們就特別有用。通過使用匿名函數,沒有必要把函數一直放在內存中,所以使用匿名函數更加有效率。
當然你也可以根本不定義函數,但是使用匿名函數可以把你的代碼分段,就像C#中的#region一樣
dojo.byId
非常有用的一個方法,與prototype.js的著名的$一樣
似乎以前的版本還有dojo.byIdArray, 不過最新的版本已經找不到這個函數了(除了src\compat\0.2.2.js)
如果有多個元素具有指定的id,則返回的是一個集合
Usage Example:



dojo.version
dojo的版本,可以取得major, minor, patch, flag和revision
這個對象沒什么太大用處,除非你要根據dojo的版本選擇執行你的代碼
dojo.raise
拋出一個異常
dojo.errorToString
將異常轉換為字符串
Usage Example:








dojo.render
系統環境對象
dojo.render.ver 返回 4 ,似乎沒什么用
dojo.os.win 返回true說明操作系統是Windows
dojo.os.linux 返回true說明操作系統是Linux
dojo.os.osx 返回true說明操作系統是MacOS
dojo.html.ie 返回true說明瀏覽器是Internet Explorer
dojo.html.opera 返回true說明瀏覽器是Opera
dojo.html.khtml 返回true說明瀏覽器是Konqueror
dojo.html.safari 返回true說明瀏覽器是Safari
dojo.html.moz 返回true說明瀏覽器是Mozilla FireFox
dojo.svg.capable 返回true說明瀏覽器支持svg
dojo.vml.capable 返回true說明瀏覽器支持vml
dojo.swf.capable 返回true說明瀏覽器支持swf
dojo.swt.capable 返回true說明瀏覽器支持swt (IBM開發的Standard Widget Toolkit)
如果dojo.html.ie為true的話




dojo.addOnLoad
可以加載指定函數到window.load時執行,好處就是可以很方便的在window.load時執行多個函數
Usage Example:


dojo.require
如果你想調用一個模塊的對象的時候,你應該首先用dojo.require來請求這個模塊,dojo會根據你的請求自動取得相應的js文件,并加載到內存中,這樣你才能調用或創建其中的對象
dojo會自動維護已加載的模塊列表,所以是不會重復加載模塊的
Usage Example:

dojo.requireIf=dojo.requireAfterIf
可以根據指定的條件來決定是否加載指定的模塊
Usage Example:

dojo.provide
除非你要開發自己的模塊,不然是用不到這個方法的,你可以這句看成是向系統注冊這個模塊名稱
Usage Example:

dojo.exists
判斷指定對象是否具有指定名稱的方法
Usage Example:

dojo.hostenv.getText
返回指定url的內容
PS: 由于瀏覽器的安全限制,因此只能用于取得同域名的url的內容,否則會報告權限不夠
Usage Example:




dojo.debug
輸出調試信息,如果在djConfig中指定了debugContainerId,則輸出到指定的console容器中,否則直接document.write
所有的調試信息均以 DEBUG: 開頭
Usage Example:

dojo.hostenv.println
與dojo.debug類似,不同的是,輸出內容沒有 DEBUG:
Usage Example:

dojo.debugShallow
輸出指定對象的全部信息(Shallow說明并不會遍歷到下一級別的對象屬性)以供調試
Usage Example:
