tech blog
함수의 기본 개념
FrontEnd 개발자 준비생 최현우
2023. 8. 6. 13:01
728x90
함수의 개념
함수(function)란 하나의 특별한 목적의 작업을 수행하도록 설계된 독립적인 블록을 의미한다.
이러한 함수는 필요할 때마다 호출하여 해당 작업을 반복해서 수행할 수 있다.
함수선언
function 함수명(매개변수) {
함수본문
}
- funcition이라는 선언자를 작성
- 함수 이름 작성
- 소괄호를 열어 매개변수를 작성(매개변수는 생략가능, 소괄호는 반드시 열고 닫아야 한다.)
- 중괄호를 열어서 함수 본문 작성
함수 호출
이렇게 선언한 함수는 함수 이름 뒤에 소괄호를 붙여 호출할 수 있다.
// 함수 선언
function attack(){
console.log("damage")
}
// 함수 호출
attack(); // damage
매개 변수 (parameter)
함수를 선언할 때 매개 변수를 작성하면 함수를 호출할 때 임의의 값을 함수 내부로 전달할 수 있다.
- 함수를 선언할 때 소괄호 내부에 매개 변수 이름을 작성
- 함수 본문에서 매개변수를 활용한 동작을 작성(함수본문)
- 함수를 호출할 때 소괄호 내부에 값을 전달한다
funciton attack(damage){
console.log(`${damage}만큼 피해를 입혔습니다`)
}
attack(99) // 99만큼 피해를 입혔습니다.
인자 (argument)
함수를 호출할때 매개변수로 임의의 값이 매개변수로 전달되는데 여기서 임의의 값을 인자라고 한다.
위 코드에서는 99가 인자에 해당한다.
추가조사
매개 변수는 두개 이상 가능할까?
매개 변수는 여러 개를 작성할 수도 있다.
2개 이상의 매개변수가 필요한 경우, (쉼표)로 구분해서 작성
호출 시에는 선언할 때의 순서에 맞춰서 값을 전달
funciton attack(damage, health){
console.log(`${damage}만큼 피해를 입혔습니다`)
console.log(`남은 체력 ${damage}`)
}
attack(99, 1) // 99만큼 피해를 입혔습니다.
// 남은 체력 1
매개변수의 기본 값은 undefined?
매개변수의 기본 값은 undefined다.
만약, 호출할때 매개변수에 아무 값도 전달하지 않는다면 매개변수는 undefined값을 가지고 동작한다.
funciton attack(damage, health){
console.log(`${damage}만큼 피해를 입혔습니다`)
console.log(`남은 체력 ${damage}`)
}
attack() // undefined만큼 피해를 입혔습니다.
// 남은 체력 undefined
그렇기 때문에 필요에 따라 undefined 값을 원하지 않을 경우에는 매개변수의 기본값을 할당하면 된다.
방법은 간단한데, 함수를 선언할 때 매개변수 부분에서 바로 값을 할당하면 된다.
funciton attack(damage = 0, health = 100){
console.log(`${damage}만큼 피해를 입혔습니다`)
console.log(`남은 체력 ${damage}`)
}
attack() // 0만큼 피해를 입혔습니다.
// 남은 체력 100