TypeError:无法读取未定义的属性“search”

时间:2014-08-14 21:08:00

标签: javascript

您好我尝试使用数组进行简单搜索,但我收到此错误:

 TypeError: Cannot read property 'search' of undefined

这是我的代码:

var debug  = [];
var search = function (data, wordSearch) {
  "use strict";

  var
    wordList = [], //set a word lists to send a result.
    i = 0,
    word,
    cutedWord;

  debug.push(data);
  while (i <= data.length) {
    word = data[i];
    if (word.search(wordSearch) !== -1) {
      wordList.push(data[i]);
    }
    i++;
  }
  return (wordList);
};

1 个答案:

答案 0 :(得分:1)

=

中取出<=
while (i < data.length) {

如果数组长度为0,即使它没有内容,它至少会在一次迭代中执行,因为i<=0并且因为数组没有内容data[0]将是未定义的,这使{ {1}}未定义。

或者如果有内容,它将越过数组边界,结果具有相同的结果