함수의 중요한 개념

Jinkyu Kim·2023년 2월 24일

Javascript

목록 보기
29/30

app의 주된 일들은 입력과 처리 그리고 출력이 있다.
여기서 처리를 할 때 처리해야 하는 데이터들을 임시로 보호해 두는 곳이 바로 변수이고,
데이터들을 처리하기 위해 다양한 연산자를 사용한다
이렇게 처리를 위한 다양한 코드들을 관련이 있는 것들끼리 묶은 것을 함수라고 한다.
함수는 특정한 일을 수행하는 코드의 집합이다.

함수를 잘 사용하면 좋은 점 : 유지 보수성, 재사용 가능, 높은 가독성

함수 정의 예제)

function add(a,b){
	return a+b;
};
  • function: 함수 정의 키워드, add: 함수 이름, (a, b): 매개변수, return: 결과값 반환
  • 함수 이름과 인자 값을 사용하여 함수를 호출할 수 있다. => add(1,2);
  • 코드상에서 중복되는 일들이 있다면 함수 단위로 작은 단위의 일들을 묶어야 한다.
  • 함수 이름은 수행하는 일을 잘 나타낼 수 있게 지어야 한다.
  • 매개변수 이름도 의미 있게 지어야 한다.

함수도 결국은 객체이기 때문에 함수를 정의하면 함수 object가 Heap이라는 메모리 공간에 여러 개의 메모리셀에 할당되고, 함수의 이름은 실제로 object가 들어있는 메모리 주소의 시작 주소를 가리킨다.

⭐️tip)함수의 이름을 전달한다는 것은 함수가 가리키는 reference을 복사해서 전달하는 것이다

function add(a,b){
	return a+b;
};

function print(callback){
	const result = callback(2,3);
	console.log(result);
}

print(add);
  • add라는 함수이름은 a와 b를 더하는 실제 로직이 저장된 주소를 가리킨다
  • print(add);부분에서 (print 함수에 인자)callback은 a와 b를 더하는 로직이 저장된 주소를 받는다
  • 결국 print 함수는 callback이라는 이름의 인자에 어떤 함수의 참조값을 받아서 그 함수를 실행시키고 그 결과를 출력하는 함수이다

0개의 댓글