JavaScript学习笔记:取数组中最大值和最小值
在实际业务中有的时候要取出数组中的最大值或最小值。但在数组中并没有提供arr.max()
和arr.min()
这样的方法。那么是不是可以通过别的方式实现类似这样的方法呢?那么今天我们就来整理取出数组中最大值和最小值的一些方法。

在实际业务中有的时候要取出数组中的最大值或最小值。但在数组中并没有提供arr.max()
和arr.min()
这样的方法。那么是不是可以通过别的方式实现类似这样的方法呢?那么今天我们就来整理取出数组中最大值和最小值的一些方法。
你如何在 CSS 中设置box-shadow
属性实现动画效果,既不会导致重新绘制每一帧,又不会严重影响你页面的性能?回答是:你并不能实现。因为box-shadow
的动画变化会损害性能。这里有一个简单的办法可以实现上述问题效果。如果要实现最小的重新绘制,应该创建一个伪元素并对其opacity
元素进行动画处理,使其以每秒60帧的动画模仿运动物体相同的效果。
话说面试常会碰到面试官会问JavaScript实现数组去重的问题,最近刚好在学习有关于JavaScript数组相关的知识,趁此机会整理了一些有关于JavaScript数组去重的方法。下面这些数组去重的方法是自己收集和整理的,如有不对希望指正文中不对之处。
如果你正在筹划新的前端项目或者重构现有项目,那么你需要认识到现在的前端开发环境已经今非昔比,这其中有太多的选择了:React、Flux、Angular、Aurelia、Mocha、Jasmine、Babel、TypeScript、Flow…… 它们的本意是将开发简单化,却无形中提高了学习成本,也给未来项目的维护带来了不确定性。好在这一现象正在退热,优胜劣汰,优秀的项目慢慢沉淀下来,开发方式也越来越清晰。有些开发者正在尝试使用基于上述技术的框架进行开发,也在一定程度上减少了学习成本。
JavaScript中提供了sort()
和reverse()
方法对数组项重新排序。但很多时候这两个方法无法满足我们实际业务的需求,比如说扑克牌游戏中的随机洗牌。在这篇文章一起来学习如何完成洗牌的效果,以及一些有关于数组随机排序的相关知识。
在实现Web项目的图标系统时,SVG是一个不错的选择。虽然使用SVG创建图标系统有多种方式。在这篇文章中,我们只看其中一种:SVG symbols。这项技术基于两个元素的使用:<symbol>
和<use>
。
通过最近学习,越来越感觉JavaScript的强大与魅力之处,仅数组一个知识点就让我这样的初学者折腾了很久。折腾是折腾,但还是很有效果的,这几天的学习到的一些基本知识,就在自己的业务就用到了。顿感自信心爆棚,我也有一天能学会JavaScript。别的不多说了,咱们今天一起来玩数组的求和,看看有哪些方法可以实现数组的求和。
reduce()
和reduceRight()
两个方法功能都是类似的,可以让数组调用一个回调函数callbackfn
作为累加器。实际上根据这个回调函数,可以实现不同的功能,比如说,对数组项求合;将多个数组合并到一个数组等等。甚至配合数组其他的方法你还可以做更多功能的处理。如果感兴趣的话不仿尝试一二。
使用数组总是会碰到数组的遍历(迭代)操作。说到迭代,可能会立马想起for
语句对数组进行迭代。在ES5中新增加了五种遍历方法:forEach()
、every()
、some()
、map()
和filter()
,这五个数组迭代的方法中,其中forEach()
、every()
和some()
方法不生成一个新数组,而filter()
和map()
方法将会生成一个新数组(符合条件)。并且这些方法都会调用指定的函数callbackfn
。那么接下来就一起了解这几个方法的使用。
众所都之,数组项在一个数组中都有自己的位置。在JavaScript中提供了两个确定数组项位置的方法:indexOf()
和lastIndexOf()
。今天我们主要一起学习这两个方法是如何使用,又是如何查找出数组项在数组中的确切位置。