FrontEnd/Javascript
리터럴(Literal)이란?
NandaNanda
2024. 1. 23. 10:13
아래 출처의 리터럴에 대한 정의는 잘못되었다. 리터럴은 값, 데이터가 아니라 값을 생성하는 표기방식이다.
상수의 정의 또한 잘못되었다. 상수를 재할당이 금지된 변수다.
아래출처 보지말것.
출처: https://velog.io/@me2designer/%EB%A6%AC%ED%84%B0%EB%9F%B4Literal%EC%9D%B4%EB%9E%80
요약: 리터럴이란 값을 생성하는 표기방식이다. 상수란 변하지 않는 변수이다.
리터럴(Literal)을 알려면 상수(constant)를 같이 알고 둘을 구분할 수 있어야 한다.
상수(constant)란?
재할당이 금지된 변수
- 상수에 넣는 데이터로는 숫자만 오는 것이 아니라 클래스나 구조체 같은 객체도 올 수 있다.
- 참조변수를 상수로 지정할 때, 참조변수 안의 속성의 데이터까지도 변하지 않는다고 생각할 수 있지만, 참조변수 메모리의 주소값이 변하지 않는다는 의미일 뿐, 그 주소가 가리키는 데이터들은 변할 수 있다.
const obj = { name: 'me2designer', age: '40' } obj = [ 'apple', 'banana' ]; // 오류 obj.age = 41; console.log(obj) // {name: 'me2designer', age: '41'}
리터럴(Literal)이란?
리터럴은 값을 생성하는 표기방식을 의미.
const age = 40;
여기서 age는 상수이고, 40은 리터널이다.
Javascript뿐 아니라 프로그래밍 언어에 리터럴이란 용어는 널리 사용되며, 리터럴은 값을 생성하는 표기방식을 의미.
const num = 1; // num은 상수이고 1은 10진수 정수 리터럴입니다.
let str = '이름'; // str은 변수이고 '이름'은 문자열 리터럴입니다.
const array = []; // [] = 배열 리터럴.
const object = {}; // {} = 객체 리터럴.
리터널의 종류
리터럴예시비고정수 리터럴 | 100 | |
부동소수점 리터럴 | 10.5 | |
2진수 리터럴 | 0b01000001 | 0b시작 |
8진수 리터럴 | 0o101 | ES6에서 도입. 0o로 시작 |
16진수 리터럴 | 0x41 | ES6에서 도입. 0x로 시작 |
문자열 리터럴 | 'hello' "world" |
|
불리언 리터럴 | true false |
|
null 릴터럴 | null | |
undefined 리터럴 | undefined | |
객체 리터럴 | { name: 'Lee', address: 'Seoul' } | |
배열 리터럴 | [ 1, 2, 3 ] | |
함수 리터럴 | function() {} | |
정규 표현식 리터럴 | /[A-Z]+/g |
정리
상수는 메모리 위치(공간)이며, 메모리 값을 변경할 수 없다. 상수란 재할당이 금지된 변수이다.
리터럴은 값을 생성하는 표기방식이다.