3
我正在學習TinyMCE代碼和偶然發現這種方式暴露的公共方法:在JavaScript中公開方法。爲什麼這個語法?
tinymce.extend(this, {
execCommand : execCommand,
queryCommandState : queryCommandState,
queryCommandValue : queryCommandValue,
addCommands : addCommands
});
什麼是寫在上面,如果下面的代碼可以用來代替(用更少的代碼和更少的執行時間的好處需要相同的任務)
this.execCommand = execCommand;
this.queryCommandState = queryCommandState;
this.queryCommandValue = queryCommandValue;
this.addCommands = addCommands;
或者更短,在一個對象的聲明某處:
execCommand: execCommand,
queryCommandState: queryCommandState,
queryCommandValue: queryCommandValue,
addCommands: addCommands
抓住哪裏?
正確,它期望給定對象將被擴展的對象列表。這是他們發佈私有方法的方式,但我的問題是爲什麼要這樣發佈,而不是一個更簡單的方法? – Andy 2011-05-25 05:40:59
@andy:看我的編輯:) – 2011-05-25 05:43:33
感謝德米安,對我而言,這僅僅意味着,在方法名稱中出現拼寫錯誤的情況下,需要更多時間來識別錯誤。但是我猜想,除非有人做過類似的複雜工作,否則很難與錫蒂姆創造者爭論。 – Andy 2011-05-25 05:48:18