728x90
반응형
함수의 선언과 호출
함수의 선언
function 함수명 (매개변수들...) {
이 함수에서 실행할 코드들
return 반환값
}
function calculateAvg(price1, price2) {
const sum = price1 + price2
console.log(`두 상품의 가격 총합은 ${sum}입니다.`)
const avg = sum / 2
}
const priceA = 1000
const priceB = 2000
const avg1 = calculateAvg(priceA, priceB)
console.log(`A와 B의 평균은 ${avg1}입니다.`)
const priceC = 2000
const priceD = 3000
const avg2 = calculateAvg(priceB, priceD)
console.log(`C와 D의 평균은 ${avg2}입니다.`)
[TERMINAL] 출력하면
두 상품의 가격 총합은 3000입니다.
A와 B의 평균은 undefined입니다.
두 상품의 가격 총합은 5000입니다.
C와 D의 평균은 undefined입니다.
함수 호출시 코드의 흐름
이렇게 결과가 나온 이유는
function calculateAvg(price1, price2) {
const sum = price1 + price2
console.log(`두 상품의 가격 총합은 ${sum}입니다.`)
const avg = sum / 2
}
우선 이 부분에서 우리가 calculateAvg라는 함수를 정의했다고 할 수 있다.
이 함수는 ( a , b )
a , b 의 총합을 구해주며 그 총합을 우선 출력해준다.
그리고나서 총합을 2로 나눠준걸
avg로 변수값으로 정해준다.
const priceA = 1000
const priceB = 2000
const avg1 = calculateAvg(priceA, priceB)
console.log(`A와 B의 평균은 ${avg1}입니다.`)
여기서 볼 수 있듯이 그다음 코드이다.
priceA를 1000으로 할당해주고
priceB를 2000으로 할당해준다
avg1도 calculateavg를 활용하여 priceA, priceB의 결과값을 도출해준다.
근데!
우리가 function을 호출할때
function의 결과부터 출력되고
그리고 나서 해당문에 포함되는 console.log를 출력한다.
그래서 저런 결과값이 나온거다.
Quiz~
세 개의 물건 가격을 매개변수로 전달받아 평균값을 리턴하는 함수를 정의하고, 그 함수를 호출해서 평균값을 출력해라.
우선 function 부터 만들어주자
function calculateaVg(price1, price2, price3) {
const avg = (price1 + price2 + price3) / 3
return avg
}
const priceA = 1000
const priceB = 2000
const priceC = 3000
const avg = calculateaVg(priceA, priceB, priceC)
console.log(`평균가격 : ${avg}`)
[TERMINAL] 출력하면
평균가격 : 2000
출력된다.
728x90
반응형
'📁𝐩𝐫𝐨𝐠𝐫𝐚𝐦𝐦𝐢𝐧𝐠𝐋𝐚𝐧𝐠𝐮𝐚𝐠𝐞 > JavaScript' 카테고리의 다른 글
[JavaScript] 클라스와 객체 (2) (0) | 2023.01.18 |
---|---|
[JavaScript] 클라스와 객체 (1) (0) | 2023.01.12 |
[JavaScript] 변수, 자료형, 함수, ( 조건문 ), ( 반복문 ) (0) | 2023.01.12 |
[JavaScript] 변수, 자료형, 함수, 조건문, ( 반복문 ) (0) | 2023.01.12 |
[JavaScript] 변수, 자료형, 함수, ( 조건문 ), 반복문 (0) | 2023.01.12 |