Reputation: 10713
Hey everyone, I've been creating a little chat bot (for fun and practice).
I have the following function which isn't working correctly (FULL CODE HERE):
function runAI() {
if (i.val().length > 0) {
if ($.inArray(i.val(), helloInputArray)) {
r = Math.floor(Math.random()*4);
o.html(o.html()+helloOutputArray[r]);
i.val('');
i.focus();
} else if ($.inArray(i.val(), byeInputArray)) {
r = Math.floor(Math.random()*4);
o.html(o.html()+byeOutputArray[r]);
i.val('');
i.focus();
} else {
o.html(o.html()+"I don't know what that means...<br />");
i.val('');
i.focus();
}
}
}
It always seems to return the helloOutputArray
...
Upvotes: 0
Views: 1396
Reputation: 68476
$.inArray
does not return true or false, it returns a 0 based index.
-1 means not found, > -1 is the index of the match in the array:
if ($.inArray(i.val(), helloInputArray) > -1) {
// The item was in this array
}
Upvotes: 2