A Developing Developer

05-1. 함수의 기본 형태 본문

내일배움캠프 4기/[Javascript]혼자 공부하는 자바스크립트

05-1. 함수의 기본 형태

H-JJOO 2022. 11. 3. 18:05

  • 익명함수 : 이름이 없는 함수로 functin () { } 형태
function () {}
  • 선언적 함수 : 이름이 있는 함수로 function 함수 이름() { } 형태
function f () {}
  • 매개변수 : 함수의 괄호 안에 넣는 변수, 매개변수를 통해 함수는 외부의 정보를 입력받음
  • 리턴값 : 함수의 최종적인 결과, 함수 내부에 return 키워드를 입력하고 뒤에 값을 넣어서 생성
function f (매개변수, 매개변수, 매개변수) {
    문장
    문장
    return 리턴값
}

- 윤년확인 프로그램

const ansYear = Number(prompt('운년여부를 확인하고 싶은 년도를 입력하세요.'))

function isLeepYear(year) {

    return (year % 4 === 0) && (year % 100 !== 0) || (year % 400 === 0)
}

isLeepYear(ansYear)

if (isLeepYear(ansYear)) {
    alert(`${ansYear}년은 윤년입니다.`)
} else {
    alert(`${ansYear}년은 윤년이 아닙니다.`)
}
  • 가변 매개변수 함수 : 매개변수의 개수가 고정되어 있지 않은 함수를 의미한다. 나머지 매개변수(...)를 활용

- 나머지 매개변수 : 함수의 매개변수 앞에 마침표 3개(...)를 입력하면 매개변수들이 배열로 들어온다.

function 함수 이름(...나머지 매개변수) { }
function sample(...items) {
    console.log(items)
}

sample(1,2)
sample(1,2,3)
sample(1,2,3,4)

- 나머지 매개변수를 사용한 min()함수

function min(...items) {
            let output = items[0]
            for (const item of items) {
                if (output > item) {
                    output = item
                }
            }
            return output
        }

        console.log('min(52, 273, 32, 103, 275, 24, 57)')
        console.log(`= ${min(52, 273, 32, 103, 275, 24, 57)}`)

  • 전개 연산자 : 배열을 함수의 매개변수로써 전개하고 싶을 때 사용
함수 이름(...배열)

- 단순하게 매배변수를 모두 출력하는 함수

function sample(...items) {
    console.log(items)
}

//전개 연산자 사용 여부 비교하기
const array = [1,2,3,4]

console.log('# 전개 연산자를 사용하지 않은 경우')
sample(array)
console.log('#전개 연산자를 사용한 경우')
sample(...array)

  • 기본 매개변수 : 매개변수에 기본값이 들어가게 하고 싶을 때 사용하는 매개변수
함수 이름(매개변수, 매개변수=기본값, 매개변수=기본값)

function sample(a=기본값, b) {}

- 기본 매개변수의 활용

function earnings (name, wage=8950, hours=40) {
    console.log(`# ${name} 님의 급여 정보`)
    console.log(`- 시급 : ${wage}원`)
    console.log(`- 근무 시간 : ${hours}시간`)
    console.log(`- 급여 : ${wage * hours}원`)
    console.log('')

}

earnings('철수')

earnings('영희', 10000)

earnings('맹구', 11000, 50)

============================================================================================

출처 : 혼자 공부하는 자바스크립트

============================================================================================

 

javascript 어느정도 실무에서도 써보고 안다고 생각했는데, 택도없는거 같다.

 

교제를 보고 공부는 처음하는 거라 어려움이 많다. 

 

하나하나 이해하면서 진행하려하다보니 시간도 많이 소모되고 스트레스도 많이 받는거 같다.

 

이 와중에 '강창민 튜터'님은 어려워도 걱정하지 말라고 하신다

 

강창민 튜터 曰 " 내가 튜터다 걱정 말라"

 

오늘은 좀 게으름 + 챕터의 어려움으로 평소보다 더 진도를 못나갔다.

 

멘탈이 조금 나갔지만, 정리하고 내일 다시 시작하자!

'내일배움캠프 4기 > [Javascript]혼자 공부하는 자바스크립트' 카테고리의 다른 글

06-1. 객체의 기본  (0) 2022.11.05
05-2. 함수 고급  (0) 2022.11.04
04. 반복문  (0) 2022.11.02
03. 조건문  (0) 2022.11.01
02. 자료와 변수  (0) 2022.10.31