(3장) 타입, 값, 변수 - 2. 문자열(String)과 심볼(Symbol) [자바스크립트 완벽 가이드 7판]

iberis2·2022년 12월 25일
0

3장 타입, 값, 변수

자바스크립트의 타입

1. 숫자(Number)
2. BigInt
3. 문자열(String)
4. Boolean
5. Null, Undefined
6. Symbol
7. 객체(Object)와 배열(Array)
    - Set 객체 : 값의 집합
    - Map 객체 : 키와 값의 연결
    - 형식화 배열 : 바이트 배열과 다른 이진 데이터를 연결
    - Date 타입 : 날짜 , 시간 표현
    - Error 타입
    - 함수
    - 클래스
    - RegExp 타입: 텍스트 패턴
    (문자열에서 정교한 매칭, 검색, 대체 동작을 할 수 있다)


2. 문자열(String)

빈문자열 " "은 길이가 0인 문자열

console.log("".length); // 0

+ 연산자로 합칠 수 있다

let a = hello;
let b = world;
console.log(a + "" + b); // hello world

(1) \ 백슬래시

나눠진 문장을 한 줄로 이어줌

console.log(
  "Hello \
   Wrold! \
   Nice to meet you"
); // Hello Wrold! Nice to meet you

이스케이프 시퀀스 : 문자열에 표현할 수 없는 문자를 표현함
표현방법 | 뜻
---|---
\n | 한줄 바꿔서 출력
\t | 텝 간격 벌림
|\\ | 역슬래시 출력
| \' | 작은 따옴표 출력
|\"" | 큰 따옴표 출력

그 외 이스케이프 시퀀스

console.log("two \n line"); /* two
                              line*/
console.log("tap \t line"); // tap 	 line

console.log("I'm a Iron Man"); // I'm a Iron Man

String.raw``

\ (백슬래시)를 익스케이프 없이 그대로 출력

let filePath = `C:\number.jpeg`;
console.log(filePath);
// C:
//   umber.jpeg
//백슬래시가 줄바꿈으로 해석된 결과가 나옴

filePath = String.raw`C:\number.jpeg`;
console.log(filePath); // C:\number.jpeg   정상적으로 출력됨

String.raw( ) 소괄호를 사용하는 구문은 복잡하여 거의 사용되지 않음

let first = "FIRST";
let second = "SECOND";
let third = "THIRD";

let firstExample = String.raw(
  {
    raw: ["one", "two", "three", "four"],
  },
  first,
  second,
  third
);

console.log(firstExample); // oneFIRSTtwoSECONDthreeTHIRDfour
//`one${first}two${second}three${third}four` 과 동일

let secondExample = String.raw(
  {
    raw: "test",
  },
  1 + 9,
  first + second,
  third
);
console.log(secondExample);
// t10eFIRSTSECONDsTHIRDt
// `t${1 + 9}e${first + second}s${third}t` 와 동일

(2) `(백팁): 템플릿 리터럴

  • 줄 바꿈 쉽게 표현
  • 변수나 연산 삽입 가능 (연산 결과는 문자열로 자동 변환)
console.log(`Hi
    My name is Jhon!
        I'm happy`);
/* Hi 
    My name is Jhon!
        I'm happy */

let fruit = "apple";
console.log(`I like an ${fruit}`); // I like an apple

console.log(`1 + 1 = ${1 + 1}`); // 1 + 1 = 2

(3) 문자열 API

심볼(Symbol)

const 상수 = Symbol(); 심볼은 코드 내에서 유일한 값을 가진 변수 이름을 만들 때 사용한다
Symbol 값을 담게 된 변수는 자기 자신 외 다른 어떤 값과 비교해도 true가 될 수 없는 고유한 변수가 된다.

const mySymbol = Symbol("this is my Symbol");
const secondSymbol = Symbol("this is my Symbol");

console.log(mySymbol === "this is my Symbol"); // false
console.log(mySymbol === Symbol); // false
console.log(mySymbol === "Symbol"); // false
console.log(mySymbol === secondSymbol); // false
profile
React, Next.js, TypeScript 로 개발 중인 프론트엔드 개발자

0개의 댓글