JavaScript 문법 기초(2)

이선민·2021년 6월 24일
0

JavaScript 문법 기초(2)

조건문

// 조건문 (1)
// if (조건) {조건을 만족할 때 실행할 코드}
const shoesPrice = 40000
if (shoesPrice < 50000) {   // 신발 가격이 50000원보다 작으므로 해당 코드가 해당됨
    console.log('이 신발을 사겠습니다.') 
}

const capPrice = 50000
if (capPrice < 50000) { // 모자 가격이 50000원보다 작지 않으므로 해당 코드가 실행되지 않음
    console.log('이 모자를 사겠습니다.')
}

// 조건문 (2)
// else, else if
// if 구문의 조건을 만족하지 않았을 때 실행하고 싶은 코드를 else 구문과 함께 작성
const shoesPrice2 = 50000
if (shoesPrice2 < 40000) {
    console.log('이 신발을 사겠습니다.')
} else {
    console.log('비싸서 사지 않겠습니다.')  // 40000원보다 작지 않으므로 해당 코드가 실행됨
}

// else if 구문을 활용하면 보다 더 많은 조건을 판단하고 코드를 실행할 수 있다.
const shoesPrice3 = 50000
if (shoesPrice3 < 40000) {
    console.log('이 신발을 사겠습니다.')
} else if (shoesPrice3 <= 50000) {
    console.log('고민 해볼게요.')   // 50000원보다 작거나 같으므로 해당 코드가 실행됨
} else {
    console.log('비싸서 사지 않겠습니다')
}

// quiz 거리를 의미하는 변수를 선언하고 원하는 숫자값 (단위는 km라고 가정)을 할당합니다.
// 2km 미만이면 "걸어가자", 2km 이상이고 5km 미만이면 "택시를 타자", 그 외에는 "기차를 타자"를 출력하기
const distance = 2
if (distance < 2) {
    console.log('걸어가자')
} else if (distance >= 2 && distance < 5) {  // 논리연산자 && -> 둘 다 true여야만 true 반환
    console.log('택시를 타자')
} else {
    console.log('기차를 타자')
}

반복문

// 반복문 (1)
// while (조건) {조건을 만족할 때 실행할 코드}
let temperature = 20
while (temperature < 25) {
    console.log(`${temperature}도 정도면 적당한 온도입니다.`)
    temperature++ // 증감연산자를 활용해서 온도를 변화시킴
}
// 반복문의 조건이 계속해서 true 를 리턴한다면 무한루프에 빠져서 프로그램이 끝나지 않는다.
// 그러므로 반복문이 끝날 수 있도로 해줘야 함
// 무한루프에 빠져서 프로그램의 실행이 끝나지 않는다면 ctrl + c 를 눌러서 중단시킨다.

console.log('-------- 구분선 --------')

// 반복문 (2)
// for (begin; condition; step) {조건을 만족할 때 실행할 코드}
// while 과 같은 반복문, 좀 더 명시적으로 반복문의 조건을 표현할 수 있다.
for (let temperature2 = 20; temperature2 < 25; temperature2++) {
    console.log(`${temperature2}도 정도면 적당한 온도입니다.`)
}
// for문이 실행되는 순서
// 1. temperature2라는 변수를 선언하고 값을 할당 (begin)
// 2. temperature2가 25보다 작은지 연산한다, 결과값이 true라면 계속 실행, false라면 for문 종료 (condition)
// 3. 중괄호 안의 코드가 실행된다
// 4. temperature2에 1을 더해서 재할당하고 2번 과정부터 다시 반복 (step)

console.log('-------- 구분선 --------')

// 반복문과 조건문 활용
// 반복문과 조건문을 같이 활용하여 1 ~ 10까지의 숫자중 3으로 나누었을 때 나머지가 0인 숫자를 구해서 출력해보기
for (let number = 1; number <= 10; number++) {
    if (number % 3 === 0) {
        console.log(`${number}는 3으로 나눠서 떨어지는 숫자입니다.`)
    }
}

console.log('-------- 구분선 --------')

// quiz 1부터 20까지의 숫자중 홀수인 경우는 "숫자 _는 홀수입니다.", 짝수인 경우 "숫자 _는 짝수입니다."를 출력하기
for (let num = 1; num <= 20; num++) {
    if (num % 2 === 0) {
        console.log(`${num}는 짝수입니다.`)
    } else {
        console.log(`${num}는 홀수입니다.`)
    }
}

함수

// 함수 -> 특정 작업을 수행하는 코드의 집합
// 반복되는 특정 작업을 수행해야 한다면 그 코드 자체를 어딘가에 만들어서 저장해놓고 사용하기 위해 등장하는게 함수이다.

// 함수 선언과 호출 -> 변수를 선언하고 해당 변수에 값을 할당했던 것처럼, 함수도 선언을 하고 해당 함수가 실행할 코드의 집합을 만들어서 저장한다.
function calculateAvg(price1, price2) {
    const sum = price1 + price2
    console.log(`두 상품의 가격 총합은 ${sum}원입니다.`)
    const avg = sum / 2
    return avg
}

// 함수의 호출 -> const 변수명 = 선언한 함수명(매개변수들..)
const priceA = 1000
const priceB = 2000
const avg1 = calculateAvg(priceA, priceB)
console.log(`A와 B의 평균은 ${avg1}입니다.`)
// 1. 함수 calculateAvg를 호출하면서 변수 priceA와 priceB를 매개변수로 전달
// 2. 함수 calculateAvg의 바디 코드가 실행됨. 이 때 1번에서 전달한 매개변수의 값이 함수를 선언할 때 썼던 매개변수명인 price1, price2에 할당됨.
// 3. 함수의 바디 코드가 최종적으로 변수 avg를 리턴하고 있고, 이것이 변수 avg1에 할당됨

const priceC = 3000
const priceD = 4000
const avg2 = calculateAvg(priceC, priceD)
console.log(`C와 D의 평균은 ${avg2}입니다.`)

console.log('-------- 구분선 --------')

// quiz 세 개의 물건가격을 매개변수로 전달받아 평균값을 리턴하는 함수를 정의하고, 그 함수를 호출해서 평균값을 출력하기
function calculateAvg2(price1, price2, price3) {
    const avg = (price1 + price2 + price3) / 3
    return avg
}

const priceX = 1000
const priceY = 2000
const priceZ = 3000
const avg = calculateAvg2(priceX, priceY, priceZ)
console.log(`세 개의 평균가격: ${avg}`)

0개의 댓글