본문 바로가기
Tech/Javascript

자바스크립트 프로그래밍 3장 (언어의 기초) - 3.1 ~ 3.4

by uyoo 2020. 4. 27.
「프론트엔드 개발자를 위한 자바스크립트 프로그래밍」 서적을 참조했으며, 3장에 대한 요약 및 정리를 진행하려고 한다.

 

문법

  • 대소문자 구분 : 변수, 함수 이름, 연산자 모두 대소문자 구분
  • 식별자: 변수, 함수, 프로퍼티, 함수 매개변수 이름
  • 주석
  • 스트릭트 모드: "use strict"를 선언함으로써 js 코드의 자유로움을 어느 정도 제한

 

 

키워드와 예약어

  • 키워드: 제어문의 시작과 끝을 나타내거나, 특정한 조작 목적으로 사용
  • 예약어: 아직 특별한 쓰임새는 없지만 미래에 키워드로 가능성이 있으므로 예약

 

 

변수

  • 느슨한 변수 타입
  • 어떤 타입의 데이터라도 저장 가능
  • 변수의 데이터 타입을 바꾸는 행위는 권장하지는 않음

 

 

데이터 타입

  • 원시 타입(Primitive Type): 그 자체가 하나의 값
    • 숫자(Number)
      : 모든 숫자를 실수로 처리하기 때문에 나눗셈 연산 주의

    • 문자열(String)
      : 한번 정의된 문자열은 변하지 않는다
      : 한번 생성된 문자열은 읽기만 가능, 수정은 불가

    • Boolean
      : true or false
      : 값을 불리언으로 변환하려면 -> Boolean() 함수 호출

    • Undefined
      : 변수 선언은 했지만, 초기화하지 않은 상태
      : typeof undefined -> undefined

    • Null
      : 빈 객체를 가리키는 포인터
      : typeof null -> Object
      : 개발자가 명시적으로 값이 비어있음을 나타내는데 사용

  • 참조 타입
    • 객체(Object) : 데이터와 기능의 집합, 여러개의 프로퍼티들을 포함 가능
      • 배열(Array)
      • 함수(Function)
      • 정규표현식

 

 

typeof

  • 데이터의 타입을 알 수 있음
  • 정의하지 않은 변수에 대한 타입도 알 수 있음

 

 

숫자 변환 (p.51~)

  • 숫자가 아닌 값을 숫자로 변환
  • Number()
    • true / false -> 1 / 0
    • null -> 0
    • undefined -> NaN
    • 문자열
      • 숫자로만 구성 -> 리딩 제로를 버리고 나머지를 10진수로 변환
      • 부동 소수점 -> 부동 소수점
      • 빈 문자열 -> 0
    • 객체
      • valueOf()를 호출하여 변환된 값을 기반으로 숫자로 변환
  • parseInt()
  • parseFloat()

 

 

문자열 변환(p.56~)

  • toString() 메소드 사용 - 숫자, 불리언, 객체, 문자열 / null과 undefined는 메소드 존재 x
  • null과 undefined까지 고려하고 싶다면 String() 함수 사용

 

 

Object 인스턴스

  • constructor: 객체를 만드는데 쓰이는 생성 함수
  • hasOwnProperty(프로퍼티 이름): 해당 프로퍼티가 객체 인스턴스에 고유한지, 프로토타입에서 상속하지 않았음을 확인
  • isPrototypeOf(object): 해당 객체가 다른 객체의 프로토타입인지 확인
  • propertyIsEnumerable(프로퍼티 이름): for-in문으로 나열 가능한지 확인
  • toLocaleString()
  • toString()
  • valueOf(): 객체를 나타내는 문자열, 숫자, 불리언을 반환