使用JavaScript·求数组的最大值和最小值
arr.max()和arr.min()这样的方法。那么是不是可以通过别的方式实现类似这样的方法呢?那么今天我们就来整理取出数组中最大值和最小值的一些方法。var arr=[,,,,,];
Math.max(...arr); //
Math.min(...arr); //
Array.prototype.max=function(){
let max=this[];
this.forEach(function(item,index){
if(item>max){
max=item;
}
});
return max;
}
var arr = [,,,,,,,,,,,];
console.time("费时");
console.log(arr.max()); //
console.timeEnd("费时"); // 费时:0.376ms
// ================================================ //
Array.prototype.max=function(){
let max=this[];
this.map(function(item,index){
if(item>max){
max=item;
}
});
return max;
}
var arr = [,,,,,,,,,,,];
console.time("费时");
console.log(arr.max()); //
console.timeEnd("费时"); // 费时: 0.402ms // ================================================= //
Array.prototype.max=function(){
let max=this[];
for(var i=;i<this.length;i++){
if(this[i]>max){
max=this[i];
}
}
return max;
}
var arr = [,,,,,,,,,,,];
console.time("费时");
console.log(arr.max()); //
console.timeEnd("费时"); // 费时: 0.522ms
var arr = [1,45,23,3,6,2,7,234,56,'2345',5,'a',1000];
arr.max(); // "a"
['a',1000,'c'].max(); // "c"
[1000,'a'].max(); //
"A".charCodeAt(); //
"a".charCodeAt(); //
Array.prototype.max=function(){
return arr.reduce(function(prev,next){
return prev>next?prev:next;
});
}
var arr = [1,45,23,3,6,2,7,234,56,222,34444,9];
console.time("费时");
console.log(arr.max()); //
console.timeEnd("费时"); // 费时: 0.389ms
求数组最小值的就不再多说了,同理易得~
总结
上面求数组的最值最简单的还是法一,剩下的都是遍历数组,对于数组的遍历也要选择好方法,不同的遍历方法性能不同,其中 Array.prototype.map虽然使用起来优雅,但是实际性能并不会比forEach好,具体的还是示情况而定吧
使用JavaScript·求数组的最大值和最小值的更多相关文章
- JavaScript 获取数组的最大值和最小值
js获取数组最大值和最小值 使用apply方法: var a = [1,2,3,5]; console.log(Math.max.apply(null, a));//最大值 console.log(M ...
- JavaScript 获取数组中最大值、最小值
笨方法 Array.prototype.max = function() { var max = this[0]; var len = this.length; for (var i = 1; i & ...
- JS创建一个数组1.求和 2.求平均值 3.最大值 4.最小值 5.数组逆序 6.数组去重 0.退出
rs = require("readline-sync"); let arr = []; console.log("请输入数组的长度:"); let arr_l ...
- JavaScript学习:取数组中最大值和最小值
在实际业务中有的时候要取出数组中的最大值或最小值.但在数组中并没有提供arr.max()和arr.min()这样的方法.那么是不是可以通过别的方式实现类似这样的方法呢?那么今天我们就来整理取出数组中最 ...
- Javascript获取数组中最大和最小值
取出数组中最大值或最小值是开发中常见的需求,今天继续讲解如何获取javascript数组中最大和最小值. 1.排序法 首先我们给数组进行排序,可以按照从小到大的顺序来排,排序之后的数组中第一个和最后一 ...
- js求数组的最大值--奇技淫巧和笨方法
写这篇文章的原因 我目前做的项目很少用到算法,于是这方面的东西自然就有点儿生疏.最近的一次编码中遇到了从数组中获取最大值的需求,当时我不自觉的想到了js的sort()函数,现在想来真是有些“罪过”,当 ...
- c# 求数组的最大值
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- YTU 2642: 填空题:类模板---求数组的最大值
2642: 填空题:类模板---求数组的最大值 时间限制: 1 Sec 内存限制: 128 MB 提交: 646 解决: 446 题目描述 类模板---求数组的最大值 找出一个数组中的元 ...
- 转载——JavaScript学习笔记:取数组中最大值和最小值
转载自:http://www.w3cplus.com/javascript/calculate-the-max-min-value-from-an-array.html. 取数组中最大值 可以先把思路 ...
随机推荐
- 第6章 事务管理 6.1 spring事务
事务管理——原子性.一致性.隔离性.持久性 理解spring对事务管理的支持 Spring提供对编码式和声明式事务管理的支持.编码式事务允许用户在代码中精确定义事务的边界,而声明式事务(基于AOP,面 ...
- ValueError: Error when checking input: expected input_1 to have 2 dimensions, but got array with shape (100, 100, 100, 3)
报错 Traceback (most recent call last): File "D:/PyCharm 5.0.3/WorkSpace/3.Keras/1.Sequential与Mod ...
- 你真的了解MyBatis中${}和#{}的区别吗?
动态sql是mybatis的主要特性之一.在mapper中定义的参数传到xml中之后,在查询之前mybatis会对其进行动态解析. mybatis提供了两种支持动态sql的语法:#{} 和 ${}. ...
- 福建工程学院16级第一周寒假作业E题----第七集,奇思妙想
第七集,奇思妙想 ...
- CodeForces round 520 div2
A:A Prank 题意:给定一个递增序列, 问最多能删除多少个连续数字,要求删除数字之后能还原成原来的数列. 题解:直接找就好了,为了方便可以使得第0个数字为0, 第n+1个元素为1001 代码: ...
- CF 988C Equal Sums 思维 第九题 map
Equal Sums time limit per test 2 seconds memory limit per test 256 megabytes input standard input ou ...
- IDEA中的各种快捷键
1.get.set快捷键: Alt+Insert 2.idea补全返回值快捷键 比如写了一个new User(),需要补全前面的User user ctrl+alt+V 3.idea全局搜索: Ctr ...
- Django之模型层(2)
Django之模型层(2) 一.创建模型 实例:我们来假定下面这些概念,字段和关系. 作者模型:一个作者由姓名和年龄. 作者详细模型:把作者的详情放到详情表,包含生日,手机号,家庭住址等信息.作者详情 ...
- GO 语言学习笔记--数组切片篇
1.对于make 数组切片,长度和容量需要理解清楚: 容量表示底层数组的大小,长度是你可以使用的大小: 容量的用处在哪?在与当你用 appen d扩展长度时,如果新的长度小于容量,不会更换底层数组,否 ...
- python常用内建模块——datetime
datetime是python处理日期和时间的标准库. 获取当前日期和时间 >>>from datetime import datetime >>>now = da ...