<= vs == in JS中的for循环

时间:2019-07-26 10:28:59

标签: javascript

我是JS的初学者,想问一下for循环中<=和==之间的区别。如果您看下面的代码:

 let array =["BMW", 'Honda', 'Mercedes'];

  for(let i =0; i<array.length;i++){
console.log(array[i]);
  }

由于数组基于0,因此上面的代码可以正常工作。但是我想知道为什么下面的代码不起作用:

 let array =["BMW", 'Honda', 'Mercedes'];

  for(let i =0; i<=array.length;i++){
console.log(array[i]);
  }

AND

 let array =["BMW", 'Honda', 'Mercedes'];

  for(let i =0; i==array.length;i++){
console.log(array[i]);
  }

2 个答案:

答案 0 :(得分:-1)

正如您所指出的,==和<=在这里不起作用,因为索引基于0。只要第二个参数的值为true,您的for循环将继续执行。由于数组的长度比数组中最后一项的索引大1,因此==和<=的计算结果为true,但是除了数组的最后一项之外没有其他项可以访问。

如果将索引更改为从1开始,然后在索引1的循环访问元素内,则

==和<=将起作用。

答案 1 :(得分:-1)

这些是比较运算符..只要记住for循环中的第二个参数,条件是当它变为true时就会执行。.

例如:

    let array =["BMW", 'Honda', 'Mercedes'];

    for(let i =0; i==array.length;i++){
    console.log(array[i]);
   }

这里i == array.length不正确,因为数组长度为3