Class: 제로베이스
Created: November 30, 2022 5:53 AM
Type: Javascript
강의 명: 이론부터 실전까지 모든 것을 담은 자료구조/알고리즘
콜백함수란 다른 함수의 매개변수로 전달되어 수행되는 함수
고차함수란 매개변수를 통해 함수를 받아 호출하는 함수
let number = [1, 2, 3, 4, 5];
number.forEach(function(x) {
console.log(x * 2);
}); // 2 4 6 8 10
forEach 함수같은 경우, 함수 안에 익명의 함수를 넣어서 동작시킨다.
function whatYourName(name, callback) {
console.log('name: ', name);
callback();
}
function finishFunc() {
console.log('finish function');
}
whatYourName('miniddo', finishFunc);
// name: miniddo
// finish function
값에 의한 복사로 함수 내에서 매개 변수 값을 변경 시켜도 영향을 미치지 않는다ㅣ
원시타입을 매개변수로 넘겼을 때 발생함.
let a = 1;
let add = function (b) {
return console.log(b= b+1);
};
add(a); // 2 / 함수로 변수 값이 변경되었지만
console.log(a); // 그대로 1 / a의 값에 직접 영향 미치지 않음
주소에 대한 복사로 함수 내에서 변수 내 값을 변경시키면 원본 데이터에도 영향을 받음
객체 타입을 매개 변수로 넘겼을 떄 발생
let a = {v: 1};
let add = function (b) {
return console.log(b.v = b.v+1);
};
add(a); // 2 / 함수로 a.v 값이 2로 변경
console.log(a.v); // 2 / a의 값도 바뀜