JS阵列没有被正确访问
问题描述:
我有一个数组持有各种通知,其中包括他们各自的标题和描述。我想通过它的标题访问特定的通知,但我似乎无法在数组中找到匹配项,即使应该有。JS阵列没有被正确访问
NotificationMenu = function()
{
var NotificationItems = new Array();
this.Application = function(title, description, functionName)
{
this.mTitle = title;
this.mDescription = description;
this.mFunction = functionName;
this.mIsActive = true;
}
this.registerNotification = function(title, description, functionName)
{
NotificationItems.push(new this.Application(title, description, functionName));
}
this.activateNotification = function(title)
{
console.log("-NotificationMenu: Activating notification " + title);
// Check through the list of notifications for the one called to be shown
for(var i = 0; i < NotificationItems.length; ++i)
{
if (NotificationItems[i].mName === title)
{
// This is never getting called
console.log("-NotificationMenu: Successful entry");
}
}
}
}
我访问我的数组的方式有什么问题,使它无法匹配两个标题?特别是行if(NotificationItems[i].mName === title)
不会返回true
。
答
在Application()
构造函数中没有定义mName
。也许你的意思是使用mTitle
:
if (NotificationItems[i].mTitle === title)
* bonks head * Doing!这就是它,天哪,谢谢!这是小事情,有时需要新的眼睛赶上 – Briz 2012-01-04 17:41:50
@Briz这就是所谓的代码失明。 – 2012-01-04 19:27:11