• js面试题之求数组最值


    今天继续分享js常见的面试题,求数组最大值,最小值,这里列举4种常见解法,还有其他方法也可以实现,读者知道可以私信我,我将把意见列举到博客中,欢迎提出意见。

    第一种,利用数组排序

    1 var arr=[3,4,5,1,2,9,8,7];
    2 arr.sort(function(a,b){
    3     return a-b;
    4 })
    5 var min=arr[0];
    6 var max=arr[arr.length-1];
    7 
    8 console.log(min);
    9 console.log(max);

    第二种,用eval方法(不建议使用,可能造成恶意代码执行)

    1 var arr=[3,4,5,1,2,9,8,7];
    2 var min=eval("Math.min("+arr.toString()+")");
    3 var max=eval("Math.max("+arr.toString()+")");
    4 
    5 console.log(min);
    6 console.log(max);

    第三种,假设法(学过c语言的都知道)

    1 var min=arr[0],max=arr[0];
    2 
    3 for (var i = 0; i < arr.length; i++) {
    4     arr[i]>max?max=arr[i]:null;
    5     arr[i]<min?min=arr[i]:null;
    6 }
    7 
    8 console.log(min);
    9 console.log(max);

    第四种,巧用apply(老司机解法)

    1 var arr=[3,4,5,1,2,9,8,7];
    2 
    3 var min=Math.min.apply(null,arr);
    4 var max=Math.max.apply(null,arr);
    5 
    6 console.log(min);
    7 console.log(max);
    前端发展速度之快,只有不断的学习积累,才能紧跟时代的步伐。
  • 相关阅读:
    Swap Nodes in Pairs
    Permutations(copy)
    Sort Colors
    Merge Two Sorted Lists
    Implement Queue using Stacks
    Best Time to Buy and Sell Stock
    Happy Number
    Gray Code
    springMVC初次搭建,产生错误
    JSP常用指令
  • 原文地址:https://www.cnblogs.com/zt123123/p/7617019.html
Copyright © 2020-2023  润新知