js数组求最大、最小值

  <script>
      //1.冒泡排序
      var arr = [4, 3, 2, 5];
     function bubbleSort(arr) {
        for(var i = 0; i < arr.length - 1; i++) {
          for(var j = 0; j < arr.length - 1 - i; j++) {
            if(arr[j] > arr[j + 1]) {
              var temp = arr[j];
              arr[j] = arr[j + 1];
              arr[j + 1] = temp
            }
          }
        }
        return arr
      }
      console.log('数组中最小值:' + bubbleSort(arr)[0]);
      console.log('数组中最大的值:' + bubbleSort(arr)[arr.length - 1]);
      //2.apply
      var max = Math.max.apply(this, arr);
      var min = Math.min.apply(this, arr);
      console.log('数组中的最小的值:' + min);
      console.log('数组中最大的值:' + max);
      //3.sort:先排序在取第一项和最后一项
      arr.sort(function(a, b) {
        return a - b;
      })
      console.log('数组中的最小的值:' + arr[0]);
      console.log('数组中的最大的值:' + arr[arr.length - 1]); 
     //4.ES6的扩展运算符
     console.log('数组中的最小的值:' + Math.min(...arr))
     console.log('数组中的最大的值:' +Math.max(...arr))
    //5.假设法:假设第一个值为最大,然后拿它逐个与后面的数比较,如果后面的数有比它大的则说明假设错了,
    //我们把假设的值进行替换,最后得到的结果就是我们想要的
    // 获取最大值:
    var min = arr[0];
    var max = arr[0];
    for (var i = 0; i < arr.length; i++) {
      var cur = arr[i];
      cur < min ? min = cur : null;
      cur > max ? max = cur : null
    }
    console.log('数组中的最小的值:' + min);
    console.log('数组中的最大的值:' + max);
   </script>

  

猜你喜欢

转载自www.cnblogs.com/xiyuyizhihua/p/10859156.html
今日推荐