循环遍历数组并显示值

时间:2017-01-06 15:12:15

标签: javascript jquery arrays

我有一个包含数据的数组(JavaScript / jQuery),我想循环并将值打印到控制台。现在它似乎很简单,但我似乎无法让它工作。目前我只有一个价值,但我不认为通过增加更多价值会产生影响。

list = ["Example String"];

$j.each(list, function(item) {    
    console.info(item[0]); // Returns 0 in the console
    console.info(item); // Returns undefined in the console
});

我想在控制台中显示为;

Example String
Example String 2
Example String 3

等等......

This is sort of on the right lines但仍无效 - 我尝试了.eq。我只是认为,因为它没有密钥,使用[0]在某种程度上是错误的,也许?它必须非常明显,因为我只是没有看到为什么这不起作用。

3 个答案:

答案 0 :(得分:2)

each()处理函数中,第一个参数是迭代的当前索引。 第二个参数是值本身。试试这个:



var $j = $.noConflict();

list = ["Example String 1", "Example String 2", "Example String 3"];
$j.each(list, function(i, item) {
    console.info(item);
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
&#13;
&#13;

另请注意,基本循环并不需要jQuery。您可以使用for

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

或者,如果您可以使用ECMA2015功能forEach(),但请注意,&lt; IE9:

list.forEach(function(item) {
  console.log(item);
});

答案 1 :(得分:0)

猜猜你想要这个:

$j.each(["string_1", "string_2", "string_3"], function(index, value) {
  console.log(value + " " + index);
});

你缺少的是,每个都需要2个参数(索引和值)。因此,当您仅使用时,它表示数组的索引。

请在此处查看jQuery.each() doc和示例。

答案 2 :(得分:0)

你想要这个吗?

<Transaction test={this.test} key={idx} amount={amount} name={name} tags={ this.state.tags} />