String
String.indexOf
대상 문자열에서 인수로 전달받은 문자열을 검색하여 첫번째 인덱스를 반환한다. 실패하면 -1을 반환한다.
const str = 'Hello World';
str.indexOf('l'); // 2
str.indexOf('or'); // 7
str.indexOf('x'); // -1
str.indexOf('l',3); // 3 -> 2번째 인수로 검색을 시작할 인덱스를 설정
String.search
대상 문자열에서 인수로 전달받은 정규표현식과 매치하여 검색. 검색실패시 -1을 반환한다.
str.search(/o/); // 4
str.search(/x/); // -1
String.includes
인수로 전달받은 문자열이 포함되있는지 확인하여 불린값으로 반환한다.
str.includes('Hello'); // true
str.includes(''); // true
str.includes('x'); // false
str.includes(); // false
String.startsWith
인수로 전달받은 문자열로 시작하는지 확인하여 불린값으로 반환한다.
str.startsWith('He') // true
str.startsWith('x') // false
String.endsWith
인수로 전달받은 문자열로 끝나는지 확인하여 불린값으로 반환한다.
str.endsWith('ld') // true
str.endsWith('x') // false
String.charAt
인수로 전달받은 인덱스에 위치한 문자를 검색하여 반환한다.
const str = 'Hello';
for(let i = 0; i<str.length; i++){
console.log(str.charAt(i)); // H e l l o
}
String.substring
첫번째 인수로받은 인덱스에서 두번째 인수로 전달받은 인덱스 전까지의 문자를 반환.
const str = 'Hello World';
str.substring(1,4); // 'ell'
str.substring(1); // 'ello World'
str.substring(4,1); // 'ell'
// > 첫번째 인수와 두번째 인수의 교환가능
str.substring(-2); // 'Hello World'
// > 인수가 음수거나 NaN인경우 0으로 취급된다
String.slice
substring과 같이 동작하지만 음수인 인수를 전달할 수 있다. 음수는 뒤에서부터 문자열을 잘라내여 반환.
const str = 'hello world';
str.substring(0,4); // 'hello'
str.slice(0,5); // 'hello'
str.substring(2); // 'llo world'
str.slice(2); // 'llo world'
str.substring(-5); // 'hello world'
str.slice(-5); // 'world'
String.toUpperCase
대상 문자열을 모두 대문자로 변경한다.
const str = 'Hello World';
str.toUpperCase(); // 'HELLO WORLD'
String.toLowerCase
대상 문자열을 모두 소문자로 변경한다.
const str = 'Hello World';
str.toLowerCase(); // 'hello world'
String.trim
대상 문자열 앞뒤에 공백 문자를 제거하고 반환한다.
const str = ' foo ';
str.trim() // 'foo'
String.repeat
대상 문자열을 인수로 전달받은 정수만큼 반복해 연결한 문자열을 반환.
정수가 0이면 빈 문자열, 음수면 RangeError가 발생. 인수를 생략하면 0으로 설정.
const str = 'abc';
str.repeat(); // ''
str.repeat(0); // ''
str.repeat(1); // 'abc'
str.repeat(2); // 'abcabc'
str.repeat(2.5); // 'abcabc'
str.repeat(-1); // RangeError: Invalid count value
String.replace
대상 문자열에서 첫째로 받은 인수로 문자열 또는 정규표현식을 검색해
두번째 인수로 전달한 문자열로 치환한 문자열을 반환한다.
const str = 'Hello World';
str.replace('World', 'Lee'); // 'Hello Lee'
const str = 'Hello world world';
str.replace('world', 'Lee'); // 'Hello Lee world'
String.split
대상 문자열에서 첫번째 인수로 전달한 문자열또는 표현식을 검색하여
문자열을 분할한후 각 문자열로 이루어진 배열을 반환한다.
인수를 생략하면 문자열 전체를 단일 요소로 하는 배열을 반환한다.
const str = 'How are you doing?';
str.split(' '); // ["How", "are", "you", "doing?"]
str.split(''); // ['H','o','w',' ','a','r','e',' ','y','o','u',' ','d','o','i','n','g','?'];
str.split(); // ['How are you doing?']
str.split('').reverse().join(''); //['!gniod uoy era woH']