js移出数组中的最大值最小值

本文介绍了一种JavaScript方法,该方法从数组中移除最大和最小元素,并探讨了使用Math.max和Math.min函数的不同方式。
function spliceMaxMin (arry){
    var result = arry.splice(0),
        max = Math.max(...result),
        min = Math.min(...result)
    for(var i = 0; i < result.length;i++){
        if(result[i] == max){
            result.splice(i,1)
        }
        if(result[i] ==min){
            result.splice(i,1)
        }
    }
    return result
}

内置函数Math.max()Math.min()可以分别找出参数中的最大值和最小值。

这些函数对于数字组成的数组是不能用的。但是,这有一些类似地方法。

Function.prototype.apply()让你可以使用提供的this与参数组成的_数组(array)_来调用函数。

var numbers = [1, 2, 3, 4];
Math.max.apply(null, numbers) // 4
Math.min.apply(null, numbers) // 1

apply()第二个参数传递numbers数组,等于使用数组中的所有值作为函数的参数。

一个更简单的,基于ES2015的方法来实现此功能,是使用展开运算符.

var numbers = [1, 2, 3, 4];
Math.max(...numbers) // 4
Math.min(...numbers) // 1

此运算符使数组中的值在函数调用的位置展开。

Math.max(1, 2, 3, 4); // 4
Math.min(1, 2, 3, 4); // 1











评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值