我正在尝试使一些现有的JS向后兼容。如果方法不存在,我需要覆盖一个方法,否则只返回现有的方法。
这是我到目前为止的代码:
this.grid.getDataSource = function(){
if (getDataSource == undefined)
return getStore();
else
return getDataSource();
}
然而,它一直在“if”行返回错误:
getDataSource未定义
解决这个问题的最佳方式是什么?
答案 0 :(得分:6)
这应该可以正常运行而不会出错。
if (typeof getDataSource != "function")
答案 1 :(得分:1)
您可能需要将其包装在()函数
this.grid.getDataSource = function(){
if (typeof getDataSource == undefined)
return getStore();
else return getDataSource();
}
答案 2 :(得分:1)
this.grid.getDataSource = getDataSource || getStore; 击>
答案 3 :(得分:0)
这是一个很好的资源,应该回答你的问题。这是一个非常简单的功能。