while循环 continue用法 数组循环

206 阅读1分钟

while循环求1-100之间的和

    var sum = 0;
    var j = 1;
    while (j <= 100) {
      sum += j;
      j++;
    }
    console.log(sum);//5050

do while循环求1-100之间的和

    var i = 0;
    var j = 1;
    do {
      i +=j;
      j++;
    } while (j<=100);
    console.log(i);//5050

for循环求1-100之间,能被7整除之外的整数和

   var sum = 0;
    for (let i = 1; i <= 100; i++) {
      if (i % 7 == 0) {
        continue;
      }
      sum +=i;
    }
    console.log(sum);//4315

for循环写数组最大值

  var arr1 = [1, 2, 3, 4, 5, 6];
  var max = arr1[0];
    for (let i = 1; i < arr1.length; i++) {
      if (arr1[i] > max) {
        max = arr1[i];
      }
    }
    console.log(max);

把数组转化成字符串,用|分割

   var arr = ['jjj', 'kkk', 'fff', 'ddd'];
    var str = '';
    var separator = '|';
    for (var i = 0; i < arr.length; i++) {
      str += arr[i] + separator;

    }
    console.log(str);

空数组添加元素

   var arr = [];
    for (var i = 0; i < 10; i++) {
      arr[i] = i + 1;
    }
    console.log(arr);

给一个数组进行筛选,大于10的元素组成新数组

方法一:
      var arr = [0,4,22,33,14,5,8,75,66];
      var newArr = [];
      var j = 0;//索引从0开始
      for (let i = 0; i < arr.length; i++) {
        if (arr[i]>10) {
          newArr[j] = arr[i];
          j++;
        }
      }
      console.log(newArr);
方法二:
      var arr = [0,4,22,33,14,5,8,75,66];
      var newArr = [];
      for (let i = 0; i < arr.length; i++) {
        if (arr[i]>10) {
          newArr[newArr.length] = arr[i];
        }
      }
      console.log(newArr);

数组去重 去0

   var arr = [0, 4, 22, 33, 14, 5, 8, 75, 66, 0];
    var newArr = [];
    for (let i = 0; i < arr.length; i++) {
      if (arr[i] != 0) {
        newArr[newArr.length] = arr[i];
      }
    }
    console.log(newArr);

翻转数组

   var arr = [0, 4, 22, 33, 14, 5, 8, 75, 66, 0];
    var newArr = [];
    for (var i = arr.length - 1; i >= 0; i--) {
      newArr[newArr.length] = arr[i];
    }
    console.log(newArr);

冒泡排序(算法)

     var arr = [5,4,3,2,1];
    for (let i = 0; i <= arr.length - 1; i++) { //外层循环趟数
      for (let j = 0; j <= arr.length - i - 1; j++) { //内层循环每一趟的交换次数
        //内部交换2个变量的值 前一个和后一个数组元素进行比较
        if (arr[j] > arr[j + 1]) {
          var temp = arr[j];
          arr[j] = arr[j + 1];
          arr[j + 1] = temp;
        }
      }
    }
    console.log(arr);