JS 기초 문법

2023. 4. 17. 11:21zerobase/javascript

728x90

1. 인사

console.log(x,y,z)

2. 기본연산자, 값

  • 산술 연산자 : + , - , * , / , % , **
  • 복합할당 연산자 : += , -= , *= , /= , %= , **=
  • 할당 연산자 : =

3. 연산자

  • 비교 연산자 : == , === < , > , <= , >= 
  • 증감 연산자 : ++ , -- , ++X, X++
  • 논리 연산자 : ||(OR) , &&(AND)
  • 부정 연산자 : !

4. 변수와 상수

  • let : 변수 생성 키워드
  • const : 상수 생성 키워드
  • var : 레거시 키워드

5. 자료형

 동적 타입 언어

  • 숫자형 : Infinity, -infinity, NaN
  • BigInt형 : 2^53-1 보다 크거나  -(2^53-1) 보다 작은 정수 표현, 숫자 끝에 N을 붙혀서 사용
  • 문자형 : “”, ʻʼ, `` 로 표현 가능
  • 불린형 : 참 / 거짓
  • 객체형(null) :  null : 비어 있음, 자바스크립트가 가지고 있는 오
  • Undefined : 값이 할당되지 않음

   typeof 연산자로 변수의 타입 확

6. 형 변환

  • 묵시적 형 변환 : 변수 앞에 + 붙히면 숫자형으로 변환, 앞쪽에 부정 연산자를 붙히면 불린형으로 변환, string을 인자로 받는 함수 값에서는 어떤 인자를 넘겨도 string 으로 변환
  • 명시적 형 변환 : String, Number, Boolean 같은 클래스에 인자로 넘겨주면 해당 값을 변환해줌

7. 조건

  • If : if (조건1) { 조건1이 참일 때 (1) } else if (조건2){ 조건1이 거짓 / 조건2가 참일 때 (2) } else { 조건1, 2가 모두 거짓일 때 (3) }
  • 삼항연산자? : 조건 ? // 조건이 참일 때 (1) : // 조건이 거짓일 때 (2)
  • Switch : switch (값) { case 케이스1 : // 값이 케이스1일 때 break; default : // 앞선 케이스들에 하나도 해당되지 않을 때}

8. 반복

  • for : for (초기; 조건; 실행){ // 반복되는 코드 }
  • While : 초기 while(조건){ // 반복되는 코드 실행 }
  • do-while : 초기 do{ // 반복되는 코드 실행 } while (조건)

9. 함수

  • 선언식 : function 함수이름(매개변수 = 기본값) { // 코드 }
  • 표현식 : const 함수이름 = function(매개변수) { // 코드 }
  • 화살표 함수 : const 함수이름 = (매개변수) => { // 코드 }
  • 지역 변수/ 전역 변수 : 함수 내부에서만 사용되는 지역 변수, 밖에서도 사용되는 전역 변

10. 객체 기본

  • 객체 생성 : { } 중괄호나 객체 생성자로 생성
  • 구조(프로퍼티, 메서드) : 사람 = { key: value } / 프로퍼티 : 성별, 국적, 이름, 취미 / 메서드 :  말하다, 걷다, 물건을 집
  • 접근 :  점 표기법(obj.key) / 대괄호 표기법(obj[key])

11. 객체 응용

  • delete : 삭제 : delete obj.name;
  • in : 프로퍼티 유무 : property1 in obj
  • for-in : 반복 : for (변수 in obj) { // 변수를 이용한 코드 }
  • 옵셔널 체이닝 : obj?.property?.subProperty
  • 구조 분해 할당 : const { property } = obj;
  • 주소 복사 : Object.assign(빈 객체, 복사 대상 객체)를 이용하면 값 복사가 가능
  • copy : deep copy / shallow copy
  • 생성자 함수와 this : 객체의 메서드 실행 시, this는 메서드를 호출한 객체 / new 키워드로 생성자 함수 호출 시 this가 만들어지고 반환됨

12. 배열

  • 배열 생성 : [ ] 대괄호나 배열 생성자로 생성
  • 접근(index 0 부터)
  • 함수
  •     .pop() 마지막 인덱스 삭제
  •     .push() 마지막 인덱스 삽입
  •     .shift() 첫번째 인덱스에서 요소 빼
  • 스택, 큐
  • length : array.length -> 요소 삭제도 가능
  • 주소 복사 : 참조를 통한 복사 (주소 복사)
  • for-of : for (변수 of array) { }
  • forEach, map : array.forEach((변수) => { }) / array.map((변수) => { return })
  • 구조 분해 할당 : const [ value1, value2 ] = array;

13. 모듈

  • 내보내기 : export
  • 가져오기 ; import
  • 모듈 시스템 : 내보내지 않은 변수는 외부로 노출되지 않아 자원 보호가 가능

'zerobase > javascript' 카테고리의 다른 글

class를 활용해서 모듈화하기  (0) 2023.04.29
웹 프론트 JS  (0) 2023.04.17
모듈  (0) 2023.04.16
배열  (0) 2023.04.16
객체  (0) 2023.04.16