我正在研究TinyMCE代码,偶然发现这种暴露公共方法的方式:
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
捕获的地方在哪里?
答案 0 :(得分:2)
好吧,有一件事突然出现在我面前的第一个样本就是TinyMCE expects its arguments extend
函数的方法。
浏览extend
的来源,它检查undefined
的每个键值对,只有在定义它们时才将它们添加到对象中。因此,在扩展类时可以使用一些额外的功能。