- 참고 영상 : 생활코딩
First class citizen
- 프로그래밍에서 하나의 개념
- 변수의 값이 될 수 있는 것들은
first class citizen
- 조건문은 변수의 값이 될 수 없으므로 second class citizen
- Javascript에서 함수는 변수가 될 수 있으므로
first class citizen
- 어떤 함수가 다른 함수의 리턴 값이 될 수 있다면 그 언어는 함수를
first class citizen
로 대우하는 것
콜백함수
val = function(a) {
return 3
}
function fn(arg){
arg();
}
fn(val)
val
은 바로 실행되지는 않지만 다른 함수에 의해서 호출됨
--> CALLBACK FUNCTION
예시: filter
words = ['spray', 'limit', 'elite', 'adfaefkjf', 'destruction', 'present'];
function myfilter(origin, callback) {
var result = [];
for(var i=0; i<origin.length; i++){
var current = origin[i];
if(callback(current)){
result.push(current);
}
}
return result;
}
newWords = myfilter(words, element => element.length>6);
console.log(newWords);