[모던JS튜토리얼] 변수, 상수, 자료형, 상호작용
변수와 상수
사용자나 서버의 정보를 저장한다.
변수
let
키워드로 변수를 생성한다.
=
할당 연산자로 변수에 값을 저장한다.
let message1 = "hello";
let message2 = "world";
let message3 = "!";
- var 예전에는 let 대신 var로 변수를 선언했다. 일반적으로 var는 변수 재선언이 가능하고, let은 변수 재선언이 불가능하다.
- 변수 명명 규칙
- 문자, 숫자, $, _ 만 들어간다.
- 첫 글자는 숫자가 될 수 없다.
- 일반적으로 카멜표기법(`ThisMessageIsACamelMessage’)으로 표기한다.
- 대 소문자를 구별한다.
- 예약어(let, return, const 등)을 변수명으로 할 수 없다.
- 엄격모드가 아니라면, 변수 선언 없이 변수를 생성할 수 있다.
상수
변화하지 않는 변수를 선언할땐 const
를 사용한다.
const TODAY = "2022-03-27";
- 값 재할당이 불가능하다. 재선언도 불가능하다.
- 하드코딩한 값의 상수명은 대문자로 작성한다.(RGB)
- 런타임 과정에서 할당되는 상수는 일반적인 방식으로 작성한다.(페이지 로드 시간)
자료형
자바스크립트의 변수는 문자열, 숫자 모두 될 수 있다.(동적 타입 언어)
숫자형
let n = 12;
n = 12.345;
숫자형은 정수와 부동소수점 숫자(소숫점)
일반적인 숫자 외에도, 무한대, -무한대, NaN같은 특수 숫자 값을 가질 수 있다.
- INFINITY
무한대를 나타낸다.
alert(1 / 0);
숫자를 0으로 나누면 얻을 수 있다.
직접 참조가 가능하다.alert(Infinity);
-
NAN 계산 중에 에러가 발생했음을 나타낸다. 부정확한 수학연산 시, Not a Number가 반환된다.
alert("str" / 2);
alert("str" / 2 + 5);
NaN덕에 자바스크립트에서 수학연산은 안전하다고 하는데, 위와같은 연산시에 코드에 치명적인 에러는 일어나지 않는다. 다만 NaN이 반환될 뿐이다.
BigInt
- 자바스크립트에선 2⌃53 - 1 보다 크거나, -(2^53 - 1)보다 작은 수는 숫자형으로 나타낼 수 없다.
이 때문에 높은 정밀도를 요구하는 작업에서는
BigInt
라는 자료형이 사용된다. - 정수 리터럴 끝에 n을 붙여서 나타낸다.
const biginteger = 1234123412341234123412341234112341234n;
문자형
따옴표의 종류
- 큰따옴표
- 작은따옴표
- 백틱
자바스크립트에서 큰 따옴표와 작은 따옴표는 큰 차이를 두지 않는다.
백틱으로 감싸고 ${변수이름}
으로 문자열 중간에 표현식을 넣을 수 있다.
let name = "John";
alert(`Hello, ${name}!`);
alert(`1 + 2 is ${1 + 2}`);
불린형
- true, false 두 값밖에 없는 자료형이다.
- 비교 결과를 저장할때도 쓰이고, 논리 연산자에서 사용된다.
let isGreater = 1 > 4;
alert(isGreater);
특수한 값, 연산자
null값
-
어떤 자료형에도 속하지 않는다.
-
자바스크립트의 null과 다른 언어의 null은 성격이 다르다.
C언어에서는 널포인터로 사용되기도 하는데, 자바스크립트에선
존재하지 않는 값
,비어 있는 값
,알 수 없는 값
을 나타내기 위해 사용한다.
undefined 값
- 어떤 자료형에도 속하지 않는다.
- 값이 할당되지 않은 상태이다. 변수를 처음에 선언하고, 값을 할당하지 않으면 자동으로 undefined가 할당된다.
객체와 심볼
- 객체
- 특수한 자료형
- 나머지 자료형들은 숫자, 문자열 중 하나만 표현할 수 있으므로
원시(primitiv)자료형
이라 불린다. - 객체는 데이터 컬렉션이나 복잡한 객체(
entity
)를 가리킨다.
- 심볼
- 객체의 고유한 식별자를 만들 때 사용된다.
typeof 연산자
- 인수의 자료형을 반환한다.
- 2가지의 형태로 사용된다. typeof n typeof(n)
alert, prompt, confirm
브라우저 환경에서 사용되는 최소한의 사용자 인터페이스 기능.
alert
alert("message");
이 함수가 실행되면 사용자가 OK를 누를 때 까지 메시지를 보여준다.
메시지가 있는 창을 modal window
라고 부르는데, 사용자는 확인버튼을 누를 때 까지 모달 창 바깥과 상호작용이 불가능하다.
prompt
사용자에게 데이터를 직접 받을 수 있다.
result = prompt(title, [default]);
- title : 사용자에게 보여줄 문자열
- default : 입력필드의 초기값
- 인수의 대괄호는 선택값을 의미한다.
사용자가 취소(cancel)하거나 빠져나가면 nullrkqtdl qksghksehlsek.
confirm
사용자가 확인을 누르면 true, 그 외에는 false를 반환한다.
result = confirm(question);
- question에는 사용자에게 보여줄 문자열이 들어간다.
댓글남기기