07. string.prototype.indexOf()

indexOf() 메서드는 호출한 String 객체에서 주어진 값과 일치하는 첫 번째 인덱스를 반환합니다. 일치하는 값이 없으면 -1을 반환합니다.

{
    const paragraph = 'The quick brown fox jumps over the lazy dog. If the dog barked, was it really lazy?';

    const searchTerm = 'dog';
    const indexOfFirst = paragraph.indexOf(searchTerm);

    console.log(`The index of the first "${searchTerm}" from the beginning is ${indexOfFirst}`);
    // Expected output: "The index of the first "dog" from the beginning is 40"

    console.log(`The index of the 2nd "${searchTerm}" is ${paragraph.indexOf(searchTerm, indexOfFirst + 1)}`);
    // Expected output: "The index of the 2nd "dog" is 52"

}

indexOf는 JavaScript에서 배열 내에서 특정 항목(요소)을 찾는 메소드입니다. 이 메소드는 배열 안에서 찾고자 하는 항목의 인덱스(위치)를 반환합니다.

22. string.prototype.split()

split() 메서드는 String 객체를 지정한 구분자를 이용하여 여러 개의 문자열로 나눕니다.

{
    const str = 'The quick brown fox jumps over the lazy dog.';

    const words = str.split(' ');
    console.log(words[3]);
    // Expected output: "fox"
    
    const chars = str.split('');
    console.log(chars[8]);
    // Expected output: "k"
    
    const strCopy = str.split();
    console.log(strCopy);
    // Expected output: Array ["The quick brown fox jumps over the lazy dog."]
}

String.prototype.split() 메서드는 JavaScript 문자열을 지정된 구분자(문자열 또는 정규 표현식)를 기준으로 여러 부분 문자열로 분할하고, 분할된 부분 문자열을 배열로 반환하는 메서드입니다. 이 메서드를 사용하여 문자열을 쉽게 나눌 수 있습니다.

25. string.prototype.toLocaleLowerCase()

toLocaleLowerCase() 메서드는 어떤 지역 특정 대/소문자 매핑에 따른 소문자로 변환된 문자열 값을 반환합니다.

{
    const dotted = 'İstanbul';

    console.log(`EN-US: ${dotted.toLocaleLowerCase('en-US')}`);
    // Expected output: "i̇stanbul"
    
    console.log(`TR: ${dotted.toLocaleLowerCase('tr')}`);
    // Expected output: "istanbul"        
}

toLocaleLowerCase()은 문자열의 모든 문자를 소문자로 변환한 새로운 문자열을 반환합니다. 이 때, 변환은 현재 환경의 로캘 (언어 및 지역 설정)을 고려하여 이루어집니다. 로캘은 언어와 지역에 따라 텍스트의 표현이 다를 수 있기 때문에, 이 메서드는 텍스트를 대소문자 변환할 때 로캘에 맞는 규칙을 적용하여 변환합니다.

27. string.prototype.toLowerCase()

toLowerCase() 메서드는 문자열을 소문자로 변환해 반환합니다.

{
    const sentence = 'The quick brown fox jumps over the lazy dog.';

    console.log(sentence.toLowerCase());
    // Expected output: "the quick brown fox jumps over the lazy dog."    
}

28. string.prototype.toUpperCase()

toUpperCase() 메서드는 문자열을 대문자로 변환해 반환합니다.

{
    const sentence = 'The quick brown fox jumps over the lazy dog.';

    console.log(sentence.toUpperCase());
    // Expected output: "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG."
}

30. string.prototype.trim()

trim() 메서드는 문자열 양 끝의 공백을 제거하고 원본 문자열을 수정하지 않고 새로운 문자열을 반환합니다.

{
    const greeting = '   Hello world!   ';

    console.log(greeting);
    // Expected output: "   Hello world!   ";
    
    console.log(greeting.trim());
    // Expected output: "Hello world!";    
}