2017-04-14 125 views
0

我是数组的新手,我一直在使用数组进行for循环工作。我需要做什么?使用for循环显示数组

function start() { 
    var arrPeople = ['Adele', 'Ted', 'Jo', 'Jim', 'Emma', 'Kate', 'Christopher']; 
    var text = ''; 

    for (i = 0; 1 < arrPeople.length; i++) { 
     text += (arrPeople[i] + '<br />'); 
    } 
} 
+0

请给究竟你想使用功能的风格? – pravindot17

+0

尝试将1更改为i – Ryguydg

+1

如果要避开for循环,并且只想要用'
'标记连接数组元素,您还可以使用这个 'text = arrPeople.toString()。replace(new RegExp(' ,','g'),'
')'。 – vikscool

回答

3

你的函数有一些小错误。语句由三部分组成:变量初始化,在每个循环之后检查的条件以及在每个循环之后执行的操作。您错误地输入了您的状况为1 < arrPeople.length,这将永远是真实的。你也不是returning来自调用代码使用的函数的值。

function start() { 
    var arrPeople = ['Adele', 'Ted', 'Jo', 'Jim', 'Emma', 'Kate', 'Christopher']; 
    var text = ''; 

    for (var i = 0; i < arrPeople.length; i++) { 
     text += (arrPeople[i] + '<br />'); 
    } 
    return text; 
} 
0

看起来你只是想在数组中垂直显示名称列表。你可以不用for-loop

function start() { 
    var text = [ 'Adele', 'Ted', 'Jo', 'Jim', 'Emma', 'Kate', 'Christopher' ].join('<br />'); 
} 

您可以使用join来连接每个数组项,你可以指定每个分隔。这种方式没有额外的<br/>。看到array.join

+0

好的想法,但是你重复了OP没有从函数返回任何东西的错误。 – miken32

1

挑选你的毒药......

你也可以使用array.foreach ...

function start() { 
    var arrPeople = ['Adele', 'Ted', 'Jo', 'Jim', 'Emma', 'Kate', 'Christopher']; 
    var text = ''; 

    arrPeople.forEach(function(person) { 
     text += person + '<br />'; 
    }); 
} 

看到https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach

这里是一个可能使用一个更简单的解决方案array.join ...

function start() { 
    var arrPeople = ['Adele', 'Ted', 'Jo', 'Jim', 'Emma', 'Kate', 'Christopher']; 
    var text = arrPeople.join("<br />"); 

    text += "<br />"; 
} 

看到https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/join

,或者如果你愿意,你也可以使用array.reduce ...

function start() { 
    var arrPeople = ['Adele', 'Ted', 'Jo', 'Jim', 'Emma', 'Kate', 'Christopher']; 

    var text = arrPeople.reduce(function(txt, itm) { 
     return txt + '<br />' + itm; 
    }) 

    text += "<br />"; 
} 

看到https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/join

+0

这里有一些很好的选择,但是你重复了OP的错误,即不会从你的函数中返回任何东西! – miken32