数组未定义,但我将它们定义为变量

时间:2016-10-01 23:12:18

标签: javascript arrays for-loop

我对Javascript很新,我可以使用一些帮助进行故障排除。 在控制台日志中,它表示" upper"和" wordcount"没有定义。此函数的目标是遍历从inputdiv派生的数组,并询问该数组中是否存在数组值,并且" wordcount"数组,如果不是,则将其推入。

function processtext() {
  var textindiv = document.getElementById("inputdiv").innerHTML;
  var split = textindiv.split(" ");
  var upper = [];
  var wordcount = [];
  for (var i = 0; i < split.length; ++i) {
    upper.push(split[i].toUpperCase());
  }
  var sortedlist = upper.sort();
  var wordcount = new Array;

  for (var i = 0; i < sortedlist.length; ++i) {
    if (sortedlist.indexOf(sortedlist[i]) > -1) {
      if (wordcount.indexOf(sortedlist[i]) == -1) {
        wordcount.push(sortedlist[i]);
      }
    }
  }
}
console.log(upper);
console.log(wordcount);

1 个答案:

答案 0 :(得分:2)

变量在函数中定义,而不是全局定义。

您可以将 console.log 语句移动到函数中,或者将变量声明移出函数。