TWD 11. JS 기초
JS 기초
본 내용은 'The Web Developer 부트캠프 2023', 'Mozilla Developer Network'를 참고하여 작성했습니다.
NaN(Not A Number)
- 숫자가 아닌 값을 나타내는 숫자다.
- typeof으로 확인하면 number로 나온다.
- 연산도 가능하며, 모두 NaN으로 나온다.
let
- 중복선언 불가. 재할당 가능.
- 함수 레벨 스코프로 인해 함수 외부에서 선언한 변수는 모두 전역 변수로 된다.
- 변수 선언문 이전에 변수를 참조하면 언제나 undefined를 반환한다. 재할당 가능 이후에는 사용하지 않아도 초기화 가능.
일반 스크립트 실행과 “콘솔 모드”(e.g. 개발자 도구의 콘솔)은 차이가 있어 콘솔 모드에서는
let
,const
모두 중복 선언이 가능하다.
let name = 'lucky'
> 'lucky'
let name = 'user'
> // Uncaught SyntaxError: Identifier 'name' has already been declared
name = 'unlucky'
> 'unlucky'
const(constant)
- 중복선언 불가. 재할당 불가.
- 할당된 객체의 내용(프로퍼티의 추가,삭제,값의 변경)은 변경 가능
- 반드시 선언과 초기화를 동시에 진행되어야 한다.
const luckyNum = 26;
> 26
luckyNum = 30
> Uncaught TypeError: Assignment to constant variable.
const luckyNum = {lucky: 50};
luckyNum.lucky = 100
> 100
var
- 중복 선언 가능, 재할당 가능
- 옛날에 변수를 만드는 유일한 방법
- 변수를 유연하게 사용할 수 있지만, 기존에 선언해둔 변수의 존재를 잊고 재선언 하는 경우 문제가 발생할 수 있다.
- 특히 간단한 코드가 아닌, 길고 복잡한 코드에서 같은 이름의 변수가 여러번 선언되어 사용되면 어떤 부분에서 값이 변경되고 문제가 발생하는지 파악하기 힘들다.
- 그래서
let
과const
를 주로 사용한다.
boolean
- true, false 2가지 자료형
- js는 `false`, `0`, `""(empty string)`, `null`, `undefined`, `NaN` 6가지를 제외한 모든 것이 true다
js는 다른 언어들과 다르게 자료형 변환이 가능하다. (e.g. let 변수 = 10; -> let 변수 = ‘10’;)
Array
- js는 배열에 숫자, 문자 등의 종류에 상관없이 값들을 넣어도 된다.
Symbol
- 고유하고 변경할 수 없는 식별자를 생성하며, 한 번 생성하면 복사할 수 없습니다.
- 객체의 고유한 프로퍼티 키를 만들기 위해 사용
변수 명과 규칙
- 변수 이름은 카멜 케이스를 쓴다. (e.g. let userName: ‘yang’;)
- boolean은 변수명은 is~로 작성한다. (e.g. let isUserName: false;)
댓글남기기