🦎 JavaScript/JavaScript

[JS] 문자열

하나둘세현 2024. 8. 21. 15:39
728x90

백틱을 사용하면 문자열을 여러 줄 걸쳐 작성 가능

let guestList = `손님:
 * John
 * Pete
 * Mary
`;

\n을 사용하면 작은 따옴표나 큰 따옴표로 여러 줄 문자열 만들 수 있다.

let guestList = "손님:\n * John\n * Pete\n * Mary";

 

따옴표를 사용할때는 \를 붙여야 한다. 

그렇지 않으면 해당 따옴표가 문자열을 닫는 용도로 사용된 것이라 해석할 수 있기에


length

문자열 길이를 알 수 있는 프로퍼티이다.(함수가 아니기에 ()를 붙일 필요 없다.)


str.charAt()을 이용하면 특정 글자에 접근 가능

let str = `Hello`;

// 첫 번째 글자
alert( str[0] ); // H
alert( str.charAt(0) ); // H

for...of를 이용하면 문자열을 구성하는 글자를 대상으로 반복 잡업 가능

for (let char of "Hello") {
  alert(char); // H,e,l,l,o (char는 순차적으로 H, e, l, l, o가 됩니다.)
}

부분 문자열 찾기

str.indexOf(substr,pos)

문자열 str의 pos에서부터 시작해, 부분 문자열 substr이 어디에 위치하는지 찾을 수 있게한다.

원하는 부분 문자열을 찾으면 위치를 반환하고 그렇지 않으면 -1을 반환

let str = 'Widget with id';

alert(str.indexOf('Widget')); // 0
alert(str.indexOf('widget')); //-1

 

문자열 내 부분 문자열 전체를 대상으로 무언가를 하고 싶다면 반복문 안에 indexOf를 사용하면 된다. 반복문이 하나씩 돌때마다 검색 시작 위치가 갱신되면서 indexOf가 새롭게 호출된다.

 

includes, startsWith, endsWith

 

str.includes(substr,pos)는 str에 부분 문자열 substr이 있는지에 따라 true나 false를 반환

alert("Widget with id".includes("Widget"));

 

str.startsWith, endsWith는 특정 문자열로 시작하는지 끝나는지 여부를 확인할 때 사용 가능

alert( "Widget".startsWith("Wid") );
alert( "Widget".endsWith("get") );

부분 문자열 추출하기

substring, substr, slice

str.slice(start, [, end]) 문자열의 start부터 end까지(end는 미포함)를 반환한다.

let str = "stringif";
alert(str.slice(0, 5)); // 'strin'
let str = "stringify";
alert( str.slice(2) ); // ringify

slice는 음수도 허용한다.

 

str.substring(start, [,end])

start와 end사이에 있는 문자열을 반환

let str = "stringify";

// 동일한 부분 문자열을 반환
alert( str.substring(2, 6) ); // "ring"
alert( str.substring(6, 2) ); // "ring"

// slice를 사용하면 결과가 다름
alert( str.slice(2, 6) ); // "ring" (같음)
alert( str.slice(6, 2) ); // "" (빈 문자열)

substring은 음수 인수 허용 x, 음수는 0으로 처리

 

str.substr(start, [, length])

start에서 부터 시작해 legnth개의 글자를 반환

substr은 끝 위치 대신에 길이를 기준으로 문자열을 추출함

let str = "stringify";
alert( str.substr(2, 4) ); // ring
메서드 추출할 부분 문자열 음수 허용 여부(인수)
slice(start, end) start부터 end까지(end는 미포함) 음수 허용
substring(start, end) start와 end 사이 음수는 0으로 취급함
substr(start, length) start부터 length개의 글자 음수 허
728x90

'🦎 JavaScript > JavaScript' 카테고리의 다른 글

[JS] 스타일과 클래스  (0) 2024.08.22
[JS] 구조 분해 할당  (0) 2024.08.21
[JS] 할당  (0) 2024.03.13
[JS] 이터러블  (0) 2024.03.13
스프레드 연산자와 rest 연산자의 차이  (0) 2024.03.06