본문 바로가기
카테고리 없음

자바스크립트의 기초, 변수와 상수

by 지삶앎 2022. 8. 8.
반응형

자바스크립트 기초, 변수와 상수

자바스크립트란 무엇일까?

  • 객체 기반의 스크립트 프로그래밍 언어
  • ECMAScript 사양을 준수하는 범용 스크립트 언어
  • 자바와 직접적인 연관은 없으며, 웹의 동적 동작을 구현하기 위해 제작
  • Mocha에서 LiveScript 그리고 JavaScript로 명칭 변경

 

코드 동작 흐름

개발자는 코딩하여 스크립트를 만들고 컴파일러 혹은 인터프리터로 컴퓨터가 이해할 수 있는 언어로 바꿔 컴퓨터에 전달한다. 그 결과값을 개발자에게 보여주고 디버깅하는 순환 흐름을 가지고 있다.

 

기본 입출력

입출력은 사용자가 프로그램과 상호작용하기 위한 방법, Input/Output, I/O로 표기한다. 예를 들어 사용자가 키보드를 통한 입력하면 모니터를 통한 출력하는 것이 되겠다. 

 

input.txt에는 'hello, world!'를 작성한 뒤에 아래처럼 자바스크립트를 작성하면 출력값으로 'hello, world!'가 출력되는 걸 확인할 수 있다.

const fs = require("fs"_;
const input = fs.readFileSync("./input.txt", "utf8");

console.log(input);

 

코드 구성

자바스크립트는 문법의 대부분을 C, C++, Java로부터 차용하여 제작된 스크립트 기반 언어이다. 다수의 표현식으로 하나의 명령문이 만들어지며, 명령문으로 프로그램이 수행된다. 하나의 명령문 끝에는 개행 문자 혹은 세미콜론으로 표시한다.

 

식별자

  • 스크립트에 변수나 함수에 이름을 붙일 때 사용하는 단어
  • 대소문자를 구별하며 유니코드 문자셋을 이용
  • 자바스크립트 내 식별자 규칙
    • 키워드(예약어) 사용 불가
    • 숫자로 시작 불가
    • 특수문자는 _ 와 $만 허용
    • 공백 문자 포함 불가

 

변수

  • 변경 가능한 값을 저장하기 위한 기억 공간, 메모리
  • 사용하기 전 반드시 선언이 필요하다.
  • 중복 선언이 불가능하다. 중복 선언 시 SyntaxError가 나타난다.
  • 키워드 : let

 

상수

  • 변경 불가능한 값을 저장하기 위한 기억 공간. 재할당 시 TypeError가 나타난다.
  • 사용하기 전 반드시 선언과 초기화가 필요하다. 선언만 하면 SyntaxError가 나타난다.
  • 중복 선언이 불가능하다. 중복 선언 시 SyntaxError가 나타난다.
  • 키워드 : const
  • 상수는 보통 대문자로 표기

 

호이스팅

  • 코드에 선언된 변수 및 함수를 유효한 범위의 코드 상단으로 끌어 올리는 작업
  • var의 변수/함수의 선언만 위로 올려지고, 할당은 올려지지 않음
  • let/const 변수 선언과 함수 표현식에서는 호이스팅이 발생하지 않음.

 

공부하면서

자바스크립트에 대한 기초가 부족하다고 생각하여 강의를 수강하게 됐다. 기본 개념에 대해서 생각보다 몰랐다는 생각이 들었다. 단순하게 용도에 대해서만 고려했던 것 같다. 왜 let과 const가 생겼는지를 알게 되니까 쓰임새를 더 명확하게 알 수 있었던 시간이었다. 호이스팅은 let과 const도 발생하며 TDZ로 이동하여 에러가 발생된다고 알고 있는데 확인이 필요해 보인다.

반응형

댓글