Javascript 在循环内测试innerText或textContent

Javascript 在循环内测试innerText或textContent,javascript,Javascript,JSLint抛出以下错误,我不确定如何解决: 错误:不要在循环中声明变量 行:var text=item.innerText | | item.textContent 我的问题是如何获得innerText或textContent的支持,并在循环元素时使用正确的方法 这是我的例子。我正在写文本旁边的元素类。我希望得到相同的结果,但是在for循环之外测试innerText或textContent 小提琴: HTML: 在循环外部声明变量,并在循环内部赋值 (function () { 'use

JSLint抛出以下错误,我不确定如何解决:

错误:不要在循环中声明变量

行:var text=item.innerText | | item.textContent

我的问题是如何获得innerText或textContent的支持,并在循环元素时使用正确的方法

这是我的例子。我正在写文本旁边的元素类。我希望得到相同的结果,但是在for循环之外测试innerText或textContent

小提琴:

HTML:


在循环外部声明变量,并在循环内部赋值

(function () {
  'use strict';
  var list = $('.test');
  var text;

  for (var i = 0, item; item = list[i]; i++) {

    if (i === 1) {
        //Add new class attribute.
        item.className = item.className + ' hello';
    };

    text = item.innerText || item.textContent

    item.innerHTML = text + ' ' + item.className;

  };

}());

在循环外部声明变量,并在循环内部赋值

(function () {
  'use strict';
  var list = $('.test');
  var text;

  for (var i = 0, item; item = list[i]; i++) {

    if (i === 1) {
        //Add new class attribute.
        item.className = item.className + ' hello';
    };

    text = item.innerText || item.textContent

    item.innerHTML = text + ' ' + item.className;

  };

}());

在循环外部声明变量,并在循环内部赋值

(function () {
  'use strict';
  var list = $('.test');
  var text;

  for (var i = 0, item; item = list[i]; i++) {

    if (i === 1) {
        //Add new class attribute.
        item.className = item.className + ' hello';
    };

    text = item.innerText || item.textContent

    item.innerHTML = text + ' ' + item.className;

  };

}());

在循环外部声明变量,并在循环内部赋值

(function () {
  'use strict';
  var list = $('.test');
  var text;

  for (var i = 0, item; item = list[i]; i++) {

    if (i === 1) {
        //Add new class attribute.
        item.className = item.className + ' hello';
    };

    text = item.innerText || item.textContent

    item.innerHTML = text + ' ' + item.className;

  };

}());

您必须在for循环之外声明
var text
,才能通过此测试

(function () {
  'use strict';
  var list = $('.test'),
      text; // text is declared here.

  for (var i = 0, item; item = list[i]; i++) {
    if (i === 1) {
        //Add new class attribute.
        item.className = item.className + ' hello';
    };

    text = item.innerText || item.textContent

    item.innerHTML = text + ' ' + item.className;
  };
}());

另外,这里有一个资源丰富的链接,可以回答为什么jsLint要求您在顶部声明变量:

您必须在for循环外部声明
var text
,才能通过此测试

(function () {
  'use strict';
  var list = $('.test'),
      text; // text is declared here.

  for (var i = 0, item; item = list[i]; i++) {
    if (i === 1) {
        //Add new class attribute.
        item.className = item.className + ' hello';
    };

    text = item.innerText || item.textContent

    item.innerHTML = text + ' ' + item.className;
  };
}());

另外,这里有一个资源丰富的链接,可以回答为什么jsLint要求您在顶部声明变量:

您必须在for循环外部声明
var text
,才能通过此测试

(function () {
  'use strict';
  var list = $('.test'),
      text; // text is declared here.

  for (var i = 0, item; item = list[i]; i++) {
    if (i === 1) {
        //Add new class attribute.
        item.className = item.className + ' hello';
    };

    text = item.innerText || item.textContent

    item.innerHTML = text + ' ' + item.className;
  };
}());

另外,这里有一个资源丰富的链接,可以回答为什么jsLint要求您在顶部声明变量:

您必须在for循环外部声明
var text
,才能通过此测试

(function () {
  'use strict';
  var list = $('.test'),
      text; // text is declared here.

  for (var i = 0, item; item = list[i]; i++) {
    if (i === 1) {
        //Add new class attribute.
        item.className = item.className + ' hello';
    };

    text = item.innerText || item.textContent

    item.innerHTML = text + ' ' + item.className;
  };
}());

另外,这里有一个资源丰富的链接,可以回答为什么jsLint要求您在顶部声明变量:

谢谢!我一直在尝试使用JSLint来帮助我编写更好的JavaScript,我想我在这方面遇到了一个思维障碍。再次感谢!非常感谢。我一直在尝试使用JSLint来帮助我编写更好的JavaScript,我想我在这方面遇到了一个思维障碍。再次感谢!非常感谢。我一直在尝试使用JSLint来帮助我编写更好的JavaScript,我想我在这方面遇到了一个思维障碍。再次感谢!非常感谢。我一直在尝试使用JSLint来帮助我编写更好的JavaScript,我想我在这方面遇到了一个思维障碍。再次感谢!