Fast Blinking Hello Kitty

문제풀기

오답노트2

코른이되고싶은코린이 2023. 3. 10. 17:34

I’ve learned that people will forget what you said, people will forget what you did, but people will never forget how you made them feel.

Maya Angelou

728x90

자바스크립트 테스트 예제

01. 결괏값을 작성하시오.

{
    if( null ){
        console.log("true");
    } else {
        console.log("false");
    }
}

📝정답

false

🖍조건문에서  0, null, undefined, false, ""(빈문자열) 은 false로 작동합니다.

 

02. 결괏값을 작성하시오.

{
    let num = 0;
    while( num <= 5 ){
        num++;
        console.log(num);  
    }
}

📝정답

123456

🖍while문의 조건식이 num의 값 5까지 반복됩니다. 하지만 console.log(num)값 위에 num++ 식이 먼저 있어서 5+1까지 실행되어 6까지 결과값이 나옵니다.

 

03. 결괏값을 작성하시오.

{
    const str = [100, 200, 300, 400, 500];

    str.forEach(function(i){
        console.log(i);
    });
}

📝정답

100 200 300 400 500

 

04. 결괏값을 작성하시오.

{
    const str = [100, 200, 300, 400, 500];

    for(let i of str){
        console.log(i);
    }
}

📝정답

100 200 300 400 500

 

05.결괏값을 작성하시오.

{
    const obj = {
        a: 100, 
        b: 200
    };

    for(let key in obj) { 
        console.log(key);
        console.log(obj[key]);
    }
}

📝정답

a 100 b 200

🖍 (key)는 키값, obj[key]는 요소 값이 실행됩니다. for문은 반복문이기 때문에 순서대로 a 100 b 200 값이 나옵니다.

 

06. 결괏값을 작성하시오.

{
    let num = 0;

    while( true ){
        num++;
        if( num == 3 ){
            continue;
        }
        if( num > 6 ){
            break;
        }
        console.log(num);
    }
}

📝정답

1, 2, 4, 5, 6

🖍num의 변수 0을 넣었을때 num++식이 먼저 실행되어 결과값 1부터 시작됩니다. cotinue 속성으로 인해 3의 값은 건너뛰고 break속성으로 6에서 멈춰줍니다. 

 

07. 결괏값을 작성하시오.

{
    for(let i=1; i<=5; i++){
        console.log(i);

        if(i == 3){
            break;
        }
    }
}

📝정답

1,2,3

🖍break문으로 3에서 결과값이 멈추지만 consle.log의 순서가 먼저이기때문에 3까지 출려됩니다.

 

08. 결괏값을 작성하시오.

{
    let num = 0;

    while (num < 20){
        num++;
        console.log(num);

        if(num == 1){
            break;
        }
    }
}

📝정답

1

🖍 while문이 결과값을 20까지 출력시키지 전에 조건식의 break문으로 1에서 값이 멈춥니다. consle.log식이 위에 있어서 1까지는 출력됩니다.

 

09. 결괏값을 작성하시오.

{
    let num = 100;

    switch(num){
        case 100 : 
            console.log("100");
            break;
        case 200 : 
            console.log("200");
            break;
        default :
            console.log("300");
    }
}

📝정답

100

 

10. 결괏값을 작성하시오.

{
    func = () => {
        const str = "함수가 실행되었습니다.";
        return str;
    }

    console.log(func());
}

📝정답

함수가 실행되었습니다.

 

11. 결괏값을 작성하시오.

{
    let direct = 1;

    function gallery(num){
        if(num){
            if(num == 2) direct++;
        } else {
            if(num == 1) direct--;
        }
    }
    gallery(2);

    console.log(direct);
}

📝정답

2

🖍함수의 요소명이 gallery이고 direct의 변수값은 1입니다.

따라서 if의 첫번째 조건식을 충족했을때 변수값1에 direct++ 후치값을 더해 2가 됩니다.

 

12. 결괏값을 작성하시오.

{
    let sum = 0;
    for(var i=1; i<=100; i++) {
        sum += i;
    };
    console.log(sum);
}

📝정답

5050

 

13. 다음의 결괏값을 보고 빈칸을 작성하시오!

{
    const obj = {
        a: 100,
        b: 200,
        c: "javascript"
    }
    const { a:_____, b:_____, c:_____ } = obj;

    document.write(name1);
    document.write(name2);
    document.write(name3);

    //100
    //200
    //javascript
}

📝정답

name1, name2, name3

🖍변수에 객체를 저장하여 쓰는 방법입니다.

 

14. 다음의 결괏값을 보고 빈칸을 작성하시오!

{
    const obj = {
        a: 100,
        b: 200,
        c: "javascript"
    }
    const { a, b, c } = _______;

    document.write(a);
    document.write(b);
    document.write(c);

    //100
    //200
    //javascript
}

📝정답

obj

🖍 객체의 요소를 개별 변수에 할당하는 방법으로 객체 구조 분해할당 방법으로 데이터를 불러옵니다.

 

15. 결괏값을 작성하시오.

{
    const objA = {
        a: 100,
        b: 200
    }
    const objB = {
        c: "javascript",
        d: "jquery"
    }
    const spread = {...objA, ...objB}

    document.write(spread.a);
    document.write(spread.b);
    document.write(spread.c);
    document.write(spread.d);
}

📝정답

100, 200, javascript, jquery

 

16. 결괏값을 작성하시오.

{
    const char = ["J","A","V","A","S","C","R","I","P","T"];

    for(let i=9; i>=0; i--){
        console.log(char[i]);
    }
}

📝정답

T, R, I, C, S, A, V, A, J

🖍 배열 cahr의 인덱스 값이 for문을 통해 9,8,7,6,5,4,3,2,1,0 이므로 결과값은 요소의 반대순서대로 출력됩니다.

 

17. 결괏값을 작성하시오.

{
    let a = 1, b = 2, c = 3, result;
    result = ++a + b++ + ++c;

    console.log(result);
    console.log(a);
    console.log(b);
    console.log(c);
}

📝정답

8, 2, 3, 4

 

18. 결괏값을 작성하시오.

{
    let i = 1;

    while(i < 5){
        console.log(i);
        i++;
    }
    console.log(i);
}

📝정답

1,2,3,4,5

 

19. 결괏값을 작성하시오.

{
    let num = [32, 93, 15, 86, 50];
    let sum = 0;

    for(let i=0; i < num.length; i++){
        sum = sum * i;
    }

    console.log(sum)
}

📝정답

0

🖍 num.length는 요소의 갯수이므로 5입니다. i는 0부터 5까지 반복되지만 sum값이 0이기 때문에 i값과 곱해도 결과 값은 0이 나옵니다.

 

20. 결괏값을 작성하시오.

{
    let a, b, result;
    a = 7, b = 4
    result = a & b;

    console.log(result)
}

📝정답

4

&는 AND연산자로 이진수 자리별로 나열하였을 때 

0000 0111

0000 0100

같은 자리 숫자가 모두 1인 자리에 1값을 가집니다.

7과 4의 AND연산 결과는 0100 2의 2승으로 4가 됩니다.