我有一个称为选项的哈希。我面临的问题是它options['beforeOpen']
可能已经是一个函数,在这种情况下我不想覆盖它。我想改为调用它,然后调用另一个每次都需要调用的函数
在这个例子中,每次都需要调用的方法是methodThatINeedToDo
. 我认为下面的代码可以完成此操作,但它没有按我预期的那样工作。
function methodThatINeedToDo(){alert('maintenance');}
var options = {beforeOpen: function(){alert('first');}}
if(typeof options['beforeOpen'] == "function"){
options['beforeOpen'] = function(){options['beforeOpen'].call(); methodThatINeedToAddToDo();}
} else {
options['beforeOpen'] = methodThatINeedToDo;
}