728x90
반응형
SMALL

변수

- 데이터를 저장할 수 있는 메모리 공간
- 값이 변경될 수 있음
- 자바스크립트의 변수는 타입이 없음
- let 키워드를 사용하여 변수를 선언

var 

- 유연한 변수 선언 방식
- 지역변수, 전역변수와의 구별이 없음
- 같은 이름의 변수를 선언할 수 있음

    console.log(num);
    var num = 10;
    {
        console.log(num); // 전역변수 10
        var num = 20;     // 지역변수 20
    }
    console.log(num);     // 전역변수 num = 20


let

- 지역변수, 전역변수의 구별이 확실
- 같은 이름의 변수를 선언할 수 없음

    1. let 변수명 = 값;
    2. let 변수명;
       변수명 = 값;


✔ 트랜스 컴파일러

    - 과거 브라우저 및 특정 브라우저 버전등을 모두 사용할 수 있도록 해석해주는 라이브러리
    - BABEL

상수(constant)

    - 한번 선언된 상수는 다시 재정의 할수 없다
    - 값을 재할당 할 수 없음

    const 상수명 = 값;
    ex) const num = 10;

    const 상수명;
    상수명 = 값; (x)


✔ 자바스크립트에서 상수를 권장하는 이유

    - 해킹을 방지하기 위해
    - 개발자 실수를 방지하기 위해

데이터 타입(data type)

    - 프로그램에서 다룰수 있는 값의 종류
    - 자바스크립트는 선언시 타입을 정하지 않기 때문에 많은 문제가 발생할 수 있음
    - 자바 스크립트의 타입 유연성을 해결하기 위해 타입스크립트가 탄생

    1. 숫자형(number)
        - 정수와 실수를 따로 구분하지 않음
        - 모든 수를 실수 하나로만 표현
    
    2. 문자형(string)
        - '',"" 또는 ``로 둘러쌓인 문자의 집합
        
        num = 10
        "입력한 숫자는" + num + "입니다";
        `입력한 숫자는 ${num} 입니다`;

    3. 논리형(boolean)
        - true or false로 표현되는 값
        - false, 0, '', "", null, undefined는 모두 false로 판정함
        - false가 아닌 모든 값은 참(true)로 판정함
        - JavaScript에서는 소문자로 사용
    
    4. undefined, null
        - 타입이지 에러가 아님
        - undefined: 타입이 정해지지 않은 타입을 의미(변수 선언 후 값이 정해지지 않은경우)
            let num;
            console.log(num);   // undefined
        
        - null: null을 저장한 값. 값이 없는것(주소는 가리키지만 객체가 null인경우)
            let obj= null;
            console.log(obj); // null

    5. 심볼형(symbol)
        - 유일하고 변경 불가능한 기본값을 만듬
        - 객체 속성의 key로 사용
            const sym1 = symbol('apple');
            const sym2 = symbol('apple');
            console.log(sym1 == sym2); // 값이 같은지 비교
            console.log(sym1 === sym2); // 데이터 타입과 값이 같은지 비교

    6. 객체형(boject)
        - 어떤 속성을 하나의 변수에 저장할 수 있게 해주는 집합
        - key value pair 구조로 저장
            const user = {userid:'apple', name: '김사과', age=20}
                          ------  ------
                          key     value


✔ 자바스크립트의 변수는 타입이 고정되어 있지 않으며 같은 변수에 다른 타입의 값을 대입할 수 있음

    let user = {userid:'apple', name: '김사과', age=20};
    user = '김사과'

자동 타입 변환

    - 특정 타입의 값을 기대하는 곳에 다른 타입의 값이 오면 자동으로 타입을 변환해서 사용
        const num4 = 10;
        const str3 = '10';        
        console.log(num4 + str3);   // 1010
        console.log(num4 - str3);   // 0 -> 자동 형변환
        console.log(num4 * str3);   // 100 -> 자동 형변환
        console.log(num4 / str3);   // 1 -> 자동 형변환

NaN(not a number)

    -'정의되지 않은 값이나 표현할 수 없는 값' 이라는 의미
    - 숫자로 변환할 수 없는 연산을 시도

        const char = '삼십';
        result = char - 10; // result의 값은 NaN

타입 변환 함수

    - 강제로 타입을 변환 할 수 있음
        Number(): 문자를 숫자로 변환
        String(): 숫자나 불린등을 문자형으로 변환
        Boolean(): 문자나 숫자등을 불린형으로 변환
        Object(): 모든 자료형을 객체형으로 변환
        parseInt(): 문자를 int형으로 변환
        ParseFloat(): 문자를 float형으로 변환

자바스크립트의 대화상자

Web API: 브라우저에서 제공하는 API(Application Programing Interface) // Node.js에선 작동x
    - 프로그램들과 기능들의 상호 통신 방법을 규정하고 도와주는 매개체

        alert(): 사용자에게 메시지를 보여주고 확인을 기다림

        confirm(): 사용자에게 메시지를 보여주고 확인이나 취소를 누르면 그 결과를 불린값으로 반환

        prompt(): 사용자에게 메시지를 보여주고 사용자가 입력한 문자열을
728x90
반응형
LIST

'JavaScript' 카테고리의 다른 글

JavaScript- while, do while문  (0) 2023.04.05
JavaScript- switch문  (0) 2023.04.05
JavaScript- if문  (0) 2023.04.05
JavaScript- 연산자  (0) 2023.04.05
JavaScript- 기본편  (0) 2023.04.04

+ Recent posts