JavaScript

JavaScript (대화상자, 연산자, 제어문, 반복문)

code2772 2022. 11. 4. 12:36
728x90
반응형

✔ 자바스크립트 대화상자

- alert()
//비표준은 내 화면에서만 보이고 다른 사용자에게 안보이는 경우도 있다
사용자에게 메시지를 보여주고, 확인을 기다림
BOM(Browser Object Model)
window.alert()
alert();

- confirm()
사용자에게 메시지를 보여주고, 확인이나 취소를 누르면 그 결과를 불린값으로 반환(선택창이 2개로 보이는 - 반응형)
const result = confirm('확인이나 취소를 누르세요)

- prompt()
사용자에게 메시지를 보여주고, 사용자가 입력한 문자열을 반환
// 자바에서의 scanner 역할과 유사하다
❗ 입력받은 값은 문자형으로 저장된다
const result = prompt('문자를 입력하세요');

✔ 대화상자

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>대화상자</title>
    <script>
        // alert('안녕하세요. 자바스크립트!');
        // const result = confirm("확인 또는 취소를 눌러주세요"); // 나오기는 하지만
        //T,F를 모일려면 출력을 해야겠지?
        // console.log(result);
        const name = prompt("당신의 이름을 입력하세요");
        console.log(name);
        console.log(typeof(name));


        const age = prompt("당신의 나이을 입력하세요");
        console.log(age);
        console.log(typeof(age));
        </script>
</head>
<body>
    <h2>대화상자</h2>
</body>
</html>

 

✔ 문제.

이름과 국어점수, 수학점수, 영어점수를 입력받아 총점과 평균을 구하는 문서를 작성
(단,prompt를 사용해서 console에 결과를 출력)
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>학생성적</title>
    <script>
     
//  문제.
// 이름과 국어점수, 수학점수, 영어점수를 입력받아 총점과 평균을 구하는 문서를 작성
// (단,prompt를 사용해서 console에 결과를 출력)
        const name =prompt("이름을 입력하세요")
        console.log(`${name}님`);

        const kor = Number(prompt("국어점수 : "));
       
        console.log(`국어점수 : ${kor}점`);
        const math = Number(prompt("수학점수 : "));
        console.log(`수학점수 : ${math}점`);
       
        const eng = Number(prompt("영어점수 : "));
        console.log(`영어점수 : ${eng}점`);

        const tot = kor+eng+math;
        const avg = tot/3;

        console.log(`총점 : ${tot}점`);
        console.log(`평균 : ${avg}점`);
       
        // console.log(` 총점 : ${parseInt(kor)+parseInt(math)+parseInt(eng)}`)
        // console.log(` 평균 : ${(parseInt(kor)+parseInt(math)+parseInt(eng))/3}`)
       
        </script>
</head>
<body>
    <h2>학생성적</h2>
</body>
</html>

 

✔ 연산자(Operate)

1. 산술 연산자
+, -, *, /, %, **(제곱)
2 ** 2

2. 비교 연산자
>, < >=, <=, ==, != , ===(두 식 값이 같고, 타입까지 같으면 참),
!== (두 식의 값이 다르고, 타입까지 다르면 참)
'3' * '3' = 9
'3' == 3 -> true (자바스크립트)
'3' === 3 -> false (형이 다르기 때문 - 자바스크립트)

3. 대입 연산자
=, +=, -=, *=, /=, %=, **=

4. 증감 연산자
++변수, --변수, 변수++, 변수--

5. 논리 연산자
&&, ||, !

6. 비트 연산자
&, |, ^, <<, >>

7. 삼항 연산자
변수 = 조건식 ? 반환값1 : 반환값2

 

✔ 제어문

  1. 조건문

        if 문
        if(조건식){
        조건식의 결과가 true일 때 실행할 문장;
        ...
        }

        if~else 문
        if(조건식){
        조건식의 결과가 true일 때 실행할 문장;
        ...
        }else{
        조건식의 결과가 false일 때 실행할 문장;
        }

        if~else if~else문
        if(조건식1){
        조건식의 결과가 true일 때 실행할 문장;
        ...
        }else if(조건식2){
        조건식2 결과가 true일 때 실행할 문장;
        }
        ...
        }else{
        모든 조건식의 결과가 false일 때 실행할 문장;
        }


        switch 문
        switch(변수){
        case 값1:
        변수롸 값1이 같을 경우 실행할 문장;
        ...
        break;
        case 값2:
        변수롸 값2이 같을 경우 실행할 문장;
        ...
        break;
        ...
default:
        변수와 모든 값이 다를 경우 실행할 문장;
        ...
        }

✔ if문

const age = Number(prompt('나이를 입력하세요'))

// if(age>19){
//     console.log(`성인입니다.`)
// }else if(age > 14){
//     console.log(`청소년입니다.`)
// }else if(age>6){
//     console.log(`어린이입니다.`)
// }else{
//     console.log(`유아입니다.`)
// }

if(age>19)console.log(`성인입니다.`)
else if(age > 14)onsole.log(`청소년입니다.`)
else if(age>6)console.log(`어린이입니다.`)
else console.log(`유아입니다.`)
// 한줄 표기 이상 무
 
✔ switch 문
 
let input = prompt('아동, 청소년, 성인 중 하나를 고르세요')
switch(input){
    case '아동':
        input +=': 입장료 무료' // '아동 : 입장료 무료'
        break;
    case '청소년' :
        input += ': 입장료 15000원'
        break
    case '성인' :
        input += ': 입장료 25000원'
        break
    default :
        alert("입력값을 확인하게요")
        input= '입력값 확인!'
}

console.log(input)
 
2. 반복문

while 문

while(조건식){
조건식의 결과가 true인 동안 반복할 문장;
...
}

do ~ while 문

do{
조건식의 결과가 true인 동안 반복할 문장;
...
}while(조건식);


for 문

for(초기값; 조건식; 증감식){
조건식의 결과가 true인 동안 반복할 문장;
...
}


continue 문
- 반복중인 루트 내에서 사용하여 해당 루프의 나머지 부분을 건너뛰고 다음 조건식의 판단으로 넘어감

break 문
- switch문 또는 반복중인 루프 내에서 사용하여 해당 문장을 완전히 종료시키고 다음에 위치한 실행문으로 이동

✔ while, for 문

// const dan = Number(prompt('원하는 단을 입력하세요'))
// console.log(`${dan}단`)

// let i =1;// const인 경우에는 i가 변화하기 때문에 한번 반복 후 오류발생!!!
// while(i<=9){
//     console.log(`${dan} * ${i} = ${dan*i}`);
//     i++
// }

const dan = Number(prompt('원하는 단을 입력하세요'))
console.log(`${dan}단`)

for(let i =1; i <= 9; i++){
    console.log(`${dan} * ${i} = ${dan*i}`);
}
반응형