[카테캠]FE week 5

werthers·2023년 5월 13일
0

카카오테크캠퍼스

목록 보기
6/16
  • JS 선행
    • 표기법
      • camelCase : JS에서 주로 사용되는 표기법으로 첫번째 단어를 제외한 단어의 첫 글자를 대문자로 적는 표기법이다.
    • 주석
      // 한 줄 주석
      /*
      	여러 줄 주석
      */
    • 데이터 종류
      • String : 문자 데이터로 "" , '' 로 감싸서 사용할 수 있다.

        • ${data} 템플릿 리터럴로 데이터를 문자열에 포함시켜 사용할 수 있다.
      • Number : 숫자 데이터

        • NaN (Not a Number)은 숫자로 나타낼 수 없는 숫자 데이터, 주로 잘못된 입력을 받았을 경우 발생한다.
        • 0.1 + 0.2 같은 결과 값이 0.3이 아닌 이유는 부동 소수점을 표현하며 오류가 발생하기 때문이다. .toFixed 메소드를 사용하여 string으로 자릿수를 제한하는 방식으로 보완한다.
      • Boolean : 논리 데이터

        • true, false 두 값을 가질 수 있으며 JS의 거의 모든 데이터는 Truthy 하다.
        • falsy : false,0 , '0' , null , undefined, NaN , -0, "" 0n 이 있다.
      • null , undefined
        - null : 명시적으로 값이 비어있음을 의미하는 데이터
        - undefined : 묵시적으로 값이 비어있음을 의미하는 데이터 (의도하지 않음)


      • Array : 배열 데이터

        • 선언 방법
          • let a = new Array('1', '2');
          • let a = ['1', '2'];
          • 주로 대괄호를 사용한 두번째 방법으로 선언한다.
        • a[0] 과 같이 index로 값에 접근이 가능하다.
      • Function : 함수 데이터

        • 선언 방법
          • function a() {}
        • 위와 같은 함수를 호출이 아닌 let funVar = a 와 같이 사용해 데이터로 이용할 수 있다.
      • Object : 객체 데이터

        • 선언 방법
          • new 키워드 (생성자)를 사용하여 객체 생성
          • {} 중괄호를 사용하여 생성
        • 객체는 key:value 형태로 여러 데이터를 저장한다.
        • 접근 방법
          • . 표기법으로 객체 내 데이터에 접근할 수 있다.
          • Object['key'] 로 데이터에 접근 할 수 있다.
      • DOM API : Document Object Model

        • DOM : 브라우저가 웹 문서를 로드 후 파싱하여 생성한 트리 구조 데이터
        • DOM API : html의 데이터(요소, 속성, 텍스트)를 JS로 제어하는 방법이다.
      • 메소드 체이닝 : 객체를 연결고리로 함수를 지속적으로 호출하는 방법

        • a.split('').reverse().join('') 과 같이 메소드의 결과 값인 객체를 다음 메소드로 넘기는 방식으로 연속적으로 함수를 호출 할 수 있다.

  • JS 마스터
    • NodeJS : JS로 브라우저 밖에서 서버 등 코드를 실행할 수 있게 해주는 런타임 환경

      • NPM (NodeJS Package Manager) : NodeJS의 패키지를 프로젝트에 설치할 수 있는 도구
        • npm init 으로 NodeJS 프로젝트 환경을 시작할 수 있다.
        • 자동으로 package.json 파일이 생성되고 프로젝트의 패키지 및 버전 등을 관리하는 파일
        • npm install *** 과 같은 방법으로 프로젝트에 필요한 패키지를 설치할 수 있다.
          • node_module 디렉토리에 패키지와 패키지에 필요한 패키지가 설치된다.
          • parcel : 웹앱 번들러로 빠르게 빌드가 가능한 모듈로 서버 실행
        • 유의적 버전 (Semantic Versioning)
          • Major.Minor.Patch 형태로 버전이 관리된다.
            • Major : 기존 버전과 호환되지 않는 버전
            • Minor : 기존 버전과 호환되는 기능이 추가된 버전
            • Patch : 기존 버전에서 버그/오타 등이 수정된 버전
          • ^Major.Minor.Patch : ^ 를 사용하여 Major 버전을 제외한 업데이트 가능
          • ~Major.Minor.Patch : ~ 를 사용하여 Patch 버전만 업데이트 가능
          • 데이터 타입 확인
          • typeof 로 데이터의 타입을 확인할 수 있다.
    • Array , null 등은 정확하게 나오지 않기 때문에 어떤 데이터든 타입을 확인 할 수 있는 범용적인 함수를 만들어 사용하는 것이 좋다.

      function checkType(data) {
      	return Object.prototype.toString.call(data).slice(8, -1)
      }
  • Nullish 병합, 삼항 연산자
    • 삼항연산자 : 조건 ? : 참일 시 실행 : 거짓일 시 실행
    • Nullish 병합 : a ?? b 으로 nullundefined 값인 데이터만 제외하는 연산자
profile
Hello World !

0개의 댓글