我正在尝试在Javascript中创建一个while循环。我有一个名为数字的数组,包含5个数字。我还有一个名为bigone的变量,设置为0.我正在尝试编写一个while循环,它有一个if语句,将数组中的每个值与bigone进行比较。当数组槽中的数字大于bigone时,我想将该数字分配给bigone。我弄清楚了。这是我到目前为止,但它不会工作。是的,这是家庭作业,不,我不是要求答案,只是为了正确方向的一些指导。这是我得到的:
while ( numbers.length < 5 ) {
if ( numbers > bigone ) {
bigone = numbers
}
}
有什么想法吗?
答案 0 :(得分:2)
实施计数器,以便您可以访问数组中的值。
var i = 0;
while(numbers.length < 5 && i < numbers.length)
{
if(numbers[i] > bigone)
bigone = numbers[i];
i++;
}
这是相同的循环,但for
。不确定为什么要检查数组中是否有5个或更少的元素但是没问题。这会检查每次迭代的长度。
for(var i = 0; numbers.length < 5 && i < numbers.length; i++)
{
if(numbers[i] > bigone)
bigone = numbers[i];
}
检查一次的更好方法是将for
循环包装在if
语句中,如下所示:
if(numbers.length < 5)
{
for(var i = 0; i < numbers.length; i++)
{
if(numbers[i] > bigone)
bigone = numbers[i];
}
}
答案 1 :(得分:1)
我认为你试图找到数组中最大的数字。 另一种方法是使用forEach方法,该方法将回调函数作为参数。对数组的每个元素执行一次回调。
var numbers = [4, 12, 3, 5, 1]
var big = 0;
numbers.forEach(function(number) { if(number > big) big = number; });
console.log(big); //Prints 12