温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
Hello,大家好,那这个小节我们来实现一下filter函数啊,Filter呢,它的作用是用来过滤数组当中的元素啊,返回一个新数组,我们现在给他做一个演示啊,Filter。比方说呢,我们想返回这个数组当中所有所有奇数的元素,我们可以呢,用数组当中的方法来做cost result等于a.future。然后往里边传一个。回调就可以了。啊,接受啊,等于一。好,可以一起来看看,结果稍新,你们瞅一眼啊。没有问题。而下边我们要做的这个呢,函数呢。跟它的这个形式不太一样,但是效果是一样的。Result等于filter。那么第一个参数呢,是这个我们要操作那个数组。第二个的话也是这个回调。把回调拿过来。完成。然后最后呢,拿结果。
01:01
好,那下面的话我们来开始实现一下filter这个函数。首先先把结构先搭出来。它呢接收两个参数,第一个呢是这个数组,第二个呢是回调call back。上,然后我们把这个注释呢也加上第一个参数是一个数组。第二个呢,是一个函数。OK,然后在里边我们先声明一个空数组。声明,空数组干什么呢?就是用来接收满足条件的结果值。好,然后接下来的话,咱们开始遍历数组,对它做回调执行啊,执行完之后,如果说它的结果为真。则往数字里边去压入。如果说为甲的话,就不往里边压入了,所以咱们来便利一下数组。Let I等于零,I呢小于a.Les I加加。然后在里边执行回调。Let,这个。我们写一个res吧。等于。
02:01
Call back。把参数呢放进来,参数的话其实就是这个谁啊,就是这个当前元素了,Arr下边的I。为了写的更加接近一些,还可以接受第二个参数就是这个下标啊。把它传进来。好,那么拿到。这一个回调函数的执行结果之后,我们就可以来做个判断。大家看一下啊,咱们再来做一下类比,给搞晕了,现在这个item。然后等于item百分之二一,这就是那个回调函数。就是这个call back。然后Co back执行,把元素放进来,判断数组里边的每个元素到底对二取是不是等于一。如果是等于一的话,那它的返回结果就是一个除。啊,如果说等于零的话啊,那就是。等于一个false,然后我们说了要等于等于处的话,就要把数字里边去压入啊,所以咱们判断一下,如果说res要是为真。则压入到数组里边。
03:02
啊,如果为真。则压入。到result这个结果中。好,然后来一个result.push。然后呢,把当前这个元素加进去就可以了。然后最后呢,咱们把它返回。返回这个结果。Return一下results搞定。好,接着咱们来看看结果怎么样啊,点开浏览器刷新页面135没有问题。那如果说我们要想取一个偶数,把一改成零。然后切过来,右键刷新一下二和四没有问题。好了,这是当前的话,关于filter这个函数的一个实现,我们就完成了。
我来说两句