在nodeJs有没有使用数组大小​​循环通过一个数组?

假设我有

myArray = ['item1', 'item2'] 

我试过了

 for (var item in myArray) {console.log(item)} 

它打印0 1

我希望有item1 item2

还有没有其他的语法,没有使用

 for (var i = 0; i < myArray.length; i++) 

       

网上收集的解决方案 "在nodeJs有没有使用数组大小​​循环通过一个数组?"

你可以使用Array.forEach

 var myArray = ['1','2',3,4] myArray.forEach(function(value){ console.log(value); }); 

你可能想要的是为了枚举可迭代对象的值而build立的相对较新的构造:

 var myArray = ["a","b","c","d"]; for (let item of myArray) { console.log(item) } 

要打印“item1”,“item2”,此代码将工作。

 var myarray = ['hello', ' hello again']; for (var item in myarray) { console.log(myarray[item]) } 

在ES5中,没有使用length属性迭代稀疏数组的有效方法。 在ES6中,您可以使用for...of 举个例子:

 'use strict'; var arr = ['one', 'two', undefined, 3, 4], output; arr[6] = 'five'; output = ''; arr.forEach(function (val) { output += val + ' '; }); console.log(output); output = ''; for (var i = 0; i < arr.length; i++) { output += arr[i] + ' '; } console.log(output); output = ''; for (var val of arr) { output += val + ' '; }; console.log(output); 
 <!-- results pane console output; see http://meta.stackexchange.com/a/242491 --> <script src="//gh-canon.github.io/stack-snippet-console/console.min.js"></script> 

使用内置的Javascript函数map。 .map()会做你正在寻找的确切的东西!