码迷,mamicode.com
首页 > 其他好文 > 详细

Drop it FreeCodeCamp

时间:2018-03-25 15:57:49      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:参数传递   length   asc   for   分析   art   ice   遍历数组   gpo   

function drop(arr, func) {
  // Drop them elements.
  for(var start=0 ;start<arr.length; start++){
    if( func(arr[start]) ){
      break;
    }
  }
  return arr.slice(start);
}

drop([1, 2, 3, 4,5], function(n) {return n == 3;});

  代码实现看上面

题目:

  让我们来丢弃数组(arr)的元素,从左边开始,直到回调函数return true就停止。

  第二个参数,func,是一个函数。用来测试数组的第一个元素,如果返回fasle,就从数组中抛出该元素(注意:此时数组已被改变),继续测试数组的第一个元素,如果返回fasle,继续抛出,直到返回true。最后返回数组的剩余部分,如果没有剩余,就返回一个空数组。

分析:

  其实就是当遍历数组,将数组元素作为参数传递给筛选函数func,筛选函数返回真时,返回一个包含这个数组元素及其后面的元素的数组。

  在javascript里面,是没有块作用域的,所以上面的变量start实际上相当于C语言中的全局变量。

 

Drop it FreeCodeCamp

标签:参数传递   length   asc   for   分析   art   ice   遍历数组   gpo   

原文地址:https://www.cnblogs.com/zhrngM/p/8644345.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!