TIL_2020.04.14(화) - callback함수

nRecode·2020년 4월 14일
0

TodayILearned

목록 보기
20/95

callback함수를 활용한 함수 구현하기

  1. 어제 콜백함수로 함수를 구현하면서 콜백함수의 매개변수로 들어오는 값이라던지, 콜백함수에서 return 하면 그 값은 어디로 전달되는지에 대해 이해를 못하고 있었는데 오늘 수업시간에 그 개념에 대해 짚고 넘어가서 그런지 한번에 이해가 되어서 너무 다행이었다...

    ex)

_={};

//여기서 iterator는 함수로 전달된다.
_.explain = function(collection, iterator){
  for(let i = 0; i < collection.length; i++){
    let iterValue = iterator(collection[i])
    console.log(iterValue)
  }
}

//callback함수인 익명함수의 매개변수 element는 위 _.explain의 collectio[i]가 전달된다.
_.explain(['NRe','code'],function(element){
  console.log(element);
  //return한 값은 _.explain의 iterValue로 전달된다.
  return 'someValue with '+ element;
})

//결과
//NRe
//someValue with NRe
//code
//someValue with code
  1. 기존의 배열 element를 랜덤으로 가지게 하고 리턴하는 함수를 구현하면서 Math.random() 이용했다. 기존 배열의 인덱스 값을 이용하여 새로운 배열에 적용시켰다.
let newArr = [];
let j;
for(let i = 0; i < array.length ; i++){
  let max = array.length ;
  let min = 0
  j = Math.floor(Math.random() * max);
  newArr.push(array[j])
}
return newArr;

Reference

profile
안정성, 확장성 있는 서버를 구축하고 가꾸는 개발자를 목표로 공부하고 있습니다. 🤔🤔🤔🤔 부족하기에 맞지 않는 내용이 있을 수 있습니다. 가감없이 피드백 해주시면 정말 감사하겠습니다..🙏

0개의 댓글