AI교육과정 - JavaScript.1

단비·2022년 11월 3일
0

AI교육과정

목록 보기
24/69
  • typeof(변수명) : 변수의 타입 추출

  • jQuery
    • 과거 브라우저 및 특정 브라우저 버전 등을 모두 사용할 수 있도록 하는 라이브러리
    • jQuery 문법을 공부해야 하는 단점
  • ECMA
    • 스크립트 표준화(ECMA International에 요청)
  • 트랜스 컴파일러
    • BABEL
      • 과거 브라우저 및 특정 브라우저 버전 등을 모두 사용할 수 있도록 하는 라이브러리
  • react, vue. angular: SPA(Singe Page Application)
  • node.js: 2009년 라이언 달이 발표한 자바스크립트 런타임 환경
  • typescript: JavaScript에 type을 추가한 스크립트

최초의 브라우저: 모자이크

  • Netscape
    • 네비게이터 브라우저
    • 브랜든 아이크(Brendan Eich) 영입
    • 10일만에 모카라는 언어로 네비게이터에 적용(인터프리터 사용)
      • 모카 → 라이브 스크립트 → 자바스크립트
  • V8 자바스크립트 엔진
    • 1008년 구글에서 크롬의 베타 버전과 함께 v8엔진 소개
  • JavaScript: 바닐라 스크립트
    • 객체 기반의 스크립트 언어
    • 대소문자를 구별
    • 마지막 ;생략이 가능함
  • 자바스크립트의 출력
    • WEB API Console API를 통해 브라우저 console 창에 출력
    1. HTML 문서에서
    2. .js(자바스크립트 파일) 안에 작성
  • 자바스크립트 실행 순서
    • 인터프리터 방식이므로 위에서 아래로 실행
    1. HTML 시작 → 에 있는
  • HTML 시작 → 끝에 있는
  • HTML 시작 → 에 있는
  • script 파일이 여러 개 있을 경우 먼저 다운로드 된 script 파일을 실행하게 됨
  • HTML 시작 → 에 있는
  • script 실행은 페이지 구성이 끝날 때까지 지연
  • script 순서에 따라 실행
  • 변수(Variable)
    • 데이터를 저장할 수 있는 메모리 공간

    • 값이 변경될 수 있음

    • 자바스크립트의 변수는 타입이 없음

    • let 키워드를 사용하여 변수를 선언

      😂 var

    • 유연한 변수방식

    • 지역변수 전역변수와의 구별이 없음

    • 같은 이름의 변수를 선언할 수 있음

  • 상수(constant)
    • 한번 선언된 상수는 다시 재정의 할 수 없음
    • 값을 재할당 할 수 없음
  • 😣 자바스크립트에서 상수를 권장하는 이유

    • 해킹을 방지하기 위해
    • 개발자 실수를 방지하기 위해
    • 자바스크립트의 데이터 타입
      • 프로그램에서 다룰 수 있는 값의 종류

      • 자바스크립트는 선언 시 타입을 정하지 않기 때문에 많은 문제가 발생

      • 자바스크립트의 타입 유연성을 해결하기 위해 타입 스크립트가 탄생

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

      1. 숫자형(number)

        • 정수와 실수를 따로 구분하지 않음
        • 모든 수를 실수 하나로만 표현
      2. 문자형(string)

        • ‘’ 또는 “” 또는 `` 둘러싸인 문자의 집합
        '입력한 숫자는' +num+ '입니다'
        `입력한 숫자는 ${num} 입니다`
      3. 논리형(boolean)

        • 참(true)과 거짓(false)으로 표현되는 값
        • false, 0, ‘’, “, null, underfined 는 모두 거짓으로 판정함
        • true, false 로 판정된 값이 아닌 모든 값은 참으로 판정함
      4. underfined, null

        • underfined: 타입이 정해지지 않은 형을 의미(변수 선언 후 값이 정해지지 않은 경우)
        • null: null을 저장한 값, 값이 없는 것
      5. 심볼형(symbol)

        • 유일하고 변경 불가능한 기본값을 만듬
        • 객체 속성의 key로 사용
        const sym1 = Symbol('Apple');
        const sym1 = Symbol('Apple');
        === // 형과 값이 같은지 비교
        == // 값이 같은지 비교
        // 둘 다 false
      6. 객체형(object)

        • 어떤 속성을 하나의 변수에 저장할 수 있게 해주는 집합
        • key value pair 구조로 저장
        let 변수명 = {key : value ...};

    😂 자동 타입 변환

    • 특정 타입의 값이 기대하는 곳에 다른 타입의 값이 오면 자동으로 타입을 변환해서 사용

    😚 NaN(Not a Number)

    • 정의되지 않은 값이나 표현할 수 없는 값 이라는 의미
    • 숫자로 변환할 수 없는 연산을 시도
    -, *, / 는 자동 형변환으로 계산됨
    const c = '삼십';
    result = c - a; // NaN

    😣 타입변환 함수

    • 강제로 타입을 변환
    • Number(): 문자를 숫자로 변환
    • String(): 숫자나 불린 등을 문자형으로 변환
    • Boolean(): 문자나 숫자 등을 불린형으로 변환
    • Object(): 모든 자료형을 객체형으로 변환
    • parseInt(): 문자를 int형으로 변환
    • parseFloat(): 문자를 float형으로 변환
    const a = '10';
    const b = '20';
    let result = Number(a) + Number(b); // 30
    profile
    tistory로 이전! https://sweet-rain-kim.tistory.com/

    0개의 댓글