请在阅读本文之前,理解for循环语句的基本知识
break和continue
break含义:终止循环
continue含义:跳出本次循环,继续下一次循环
案例如下
for (let i = 1; i < 10; i++) {
if(i % 5 == 0){
break;
}
num++;
}
console.log(num);
结果为 4 说明for循环执行了四次,因为当i=5的时候,break会退出循环
for (let j = 0; j < 10; j++) {
if(j % 5 == 0){
continue;
}
num1++;
}
console.log(num1);
同上,continue在等于5和0时,会直接跳出循环,进行下次循环,所以num++ 少执行了二次,结果为8
1.冒泡排序
双层循环实现
图中我们可以看到,冒牌排序的逻辑,依次对每一位数字和它的后一位数字进行对比,如果大于后边一位,就两位调换位置,这样就可以实现最大的数值在数组最后边,用for代码书写如下:
var arr = [2, 45, 5, 4, 54, 5, 4, 54, 45];
for (let i = 0; i < arr.length - 1; i++) {
if (arr[i] > arr[i + 1]) {
var temp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = temp;
}
这样我们就实现了一个将数组中的最大值放到最后一位的功能
但是我们需要对整个数组进行排序,我们可以再次使用这个功能,但是不用对已经在最后的数据执行排序操作了,那么嵌套一层for循环,代码如下:
var arr = [2, 45, 5, 4, 54, 5, 4, 54, 45];
for (var i = 0; i < arr.length - 1; i++) {
// for (var j = i+1; j < arr.length; j++) {
for (var j = 0; j < arr.length - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
var temp = arr[</