each

Steve·2021년 3월 25일
0

얻는 효과

더욱 선언적인 코드표현
오류 및 실수 줄어들고
보다 정확하게 코딩했다는 확신을 얻음(직관적이니까)
중복을 제거 하기 위함

function _map(list, mapper) {
  var new_list = [];
  for (var i = 0; i< list.length ; i++) {///////////////
        new_list.push(mapper(list[i]));
  }
  return new_list;
}

function _filter(list, predi) { 
  var new_list = []; 
  for(var i = 0; i< list.length ; i++) {///////////////
    if(predi(list[i])) { 
      new_list.push(list[i]);
    }
  }
  return new_list;
}

위에서 중복 제거부분 -> 루프부분, 해당 i번째 찾는것

function _filter(list, predi) {
	var new_list = [];
  	_each(list, function(val){///////////////
    	if(predi(val)) { 
      	  new_list.push(val);
    	}
    }
}

function _map(list, mapper) {
  var new_list = [];
  _each(list, function(val){ ///////////////
    new_list.push(mapper(val));
  });
  return new_list;
} 

function _each(list, iter) {
  for (var i = 0; i < list.length; i++) {
    iter(list[i]);// iter 함수 실행
  }
  return list; //받은 값을 그대로 리턴함, 일개 for문 돌려주는 함수일뿐 그 이상 이하도 아님
}
profile
Front-Dev

0개의 댓글