[英]how to access “this” object in javascript?
为什么在下面的代码中,第二行给我一个未定义的错误?
function DAO()
{
this.arrVariable = new Array();
this.getItem = getItem;
this.getItemQuery = getItemQuery;
}
function getItem(key)
{
dao.arrVariable[key]();
}
function getItemQuery(key, url, options, pollfrequency)
{
alert('hey');
}
var dao = new DAO();
dao.arrVariable['var1'] = function() { this.getItemQuery('a','b','c','d'); };
dao.arrVariable['var1']();
我希望能够访问dao的getItemQuery作为对象调用。 我该怎么做呢?
在这种情况下, this
是指arrVariable
。 您可以改为在函数内部将其称为dao.getItemQuery()
:
dao.arrVariable['var1'] = function() { dao.getItemQuery('a','b','c','d'); };
dao.getItemQuery可以访问dao的属性
在function() { this.getItemQuery('a','b','c','d'); };
function() { this.getItemQuery('a','b','c','d'); };
引用function()而不是DAO。 您需要通过以下方式访问DAO:
dao.arrVariable['var1'] = function() { dao.getItemQuery('a','b','c','d'); };
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.