문자, 숫자, 기호 등의 문자 집합은
큰따옴표 ("
), 작은따옴표 ('
) 또는 백틱
(`)는 문자열 프리미티브입니다. 이 과정에서 이미 문자열의 예를 몇 가지 살펴봤습니다. 이전 모듈의 console.log
인스턴스에는 문자열 프리미티브가 포함되어 있었습니다.
console.log( "Hello, World." );
> Hello, World.
"Hello, World."
는 문자열 프리미티브입니다. 첫 번째 구문에서는
따옴표 또는 백틱:
console.log( 'Hello, World.' );
> Hello, World.
console.log(`Hello, World.`);
> Hello, World.
따옴표로 묶인 일련의 문자를 문자열 리터럴이라고 합니다. 큰따옴표와 작은따옴표는 같은 방식으로 작동하며, 한 문장이 다른 큰따옴표를 포함할 수 있습니다. 를 문자열 자체에 있는 문자로 사용합니다.
console.log( "I'm a string." );
> I'm a string.
console.log( '"A string," I said.' );
> "A string," I said.
'closes' 문자열 내에 있는 둘러싸는 문자의 인스턴스 문자열 값이며 다음과 같은 오류가 발생할 수 있습니다.
console.log( '"I'm a string," I said.' );
> Uncaught SyntaxError: missing ) after argument list
이를 방지하려면 백슬래시 (/)를 사용하여 문자를 이스케이프 처리합니다.
console.log( '"I\'m a string," I said.' );
> "I'm a string," I said.
문자열 객체
String
객체는 함수로 호출될 때 지정된 값을
문자열 리터럴입니다.
let myString = String( 10 );
myString
> "10"
typeof myString
> string
프로토타입 상속에 자세히 설명되어 있듯이
String
객체를 생성자로 사용하는 경우는 거의 없습니다. 문자열 리터럴 대신 지정된 값이 포함된 문자열 객체와 String
객체에서 이미 제공하는 메서드 및 속성을 만듭니다.
let stringObj = new String( "My new string." );
typeof stringObj
> object
stringObj
> String { "My new string." }
연결
숫자 대신 문자열의 맥락에서 사용할 때는 단일 더하기 기호 (+
)를 사용합니다.
여러 문자열 값을 하나로 결합하는 연결 연산자 역할을 합니다.
문자열:
console.log( "My" + " string." );
> My string.
문자열 리터럴 및 템플릿 리터럴
작은따옴표, 큰따옴표 및 백틱을 문자열 프리미티브를 만듭니다. 그러나 백틱을 사용하여 템플릿 리터럴('템플릿 문자열'이라고도 함) 좋아요 취소 문자열 리터럴인 경우, 템플릿 리터럴은 작은따옴표 또는 큰따옴표로 만들어 사용할 수 있습니다.
const myString = "This
is a string.";
> Uncaught SyntaxError: "" string literal contains an unescaped line break
const myString = `This
is a string.`;
console.log( myString );
> This
is a string.
템플릿 리터럴에는 달러 기호로 표시된 자리표시자 표현식을 포함할 수 있습니다.
중괄호 (${}
)를 사용합니다. 이러한 자리표시자는 '보간됨' 기본적으로
즉, 표현식의 결과가 최종
문자열.
console.log( "The result is " + ( 2 + 4 ) + "." );
> The result is 6.
console.log( `The result is ${ 2 + 4 }.` );
> The result is 6.
템플릿 리터럴을 커스텀 함수에 전달할 수 있음 단일 템플릿을 사용하는 함수 호출인 태그된 템플릿 만들기 리터럴을 인수 집합으로 제공하고 개발자가 정의한 로직이 포함됩니다.
태그 함수의 첫 번째 인수에는 문자열 값의 배열이 포함되며, 나머지 인수는 자리표시자를 정의합니다. 이 문자열 값 배열은 '분할'하여 생성 템플릿 리터럴이 포함되어 있습니다. 이 배열의 첫 번째 요소에는 첫 번째 자리 표시자까지의 모든 문자가 포함됩니다. 두 번째 요소는 첫 번째와 두 번째 사이에 있는 모든 문자를 포함합니다. 자리 표시자 등입니다. 각 자리표시자는 태그 함수에 독립형 값 대신 연결된 자리표시자와 함께 사용할 수 있습니다.
const myNoun = "template literal";
function myTagFunction( myStrings, myPlaceholder ) {
const myInitialString = myStrings[ 0 ];
console.log( `${ myInitialString }modified ${ myPlaceholder }.` );
}
myTagFunction`I'm a ${ myNoun }.`;
> "I'm a modified template literal."
이해도 확인
문자를 이스케이프 처리하는 데 사용되는 문자는 무엇인가요?
∖
)"
)/
)연결에 사용되는 문자는 무엇인가요?
+
&
.