문자열의 길이를 알고싶을때 (length)
문자열의 길이를 찾을 때는 배열에서 처럼 length를 사용하여 문자길이를 가져올 수 있습니다.
{
let str ="Good morning!";
let lang = "반갑습니다!";
console.log(str.length);
console.log(lang.length);
}
//str.length 출력:13
//lang.length 출력:6
문자열에 포함된 "공백"도 문자열의 길이에 포함 됩니다.
문자열의 문자의 위치 활용하기 charAt(), indexOf () 메서드
문자열은 여러개의 문자가 나열 되어 있으므르 배열 처럼 각 문자의 위치를 가리키는 인덱스가 있다고 가정하고, 그 위치와 관련된 주요 메서드에는 charAt()메서드와 indexOf()메서드가 있습니다.
특정 위치의 문자 접근하기 charAt(위치) 메서드
문자열에서 특정 위치의 문자를 가져오려면 charAt() 함수를 사용합니다. 메서드 없이 대괄호 [] 를 이용하여 사용할 수도 있습니다. 위치는 배열의 인덱스 처럼 0부터 시작합니다.
{
let str ="Good morning!";
let lang = "반갑습니다!";
console.log(str.charAt(3):); //0부터시작하여 3번째 문자를 출력합니다.
console.log(lang[2]); //0부터 시작하여 2번째 문자를 출력합니다.
}
//str.charAt(3):d
//lang[2]:습
문자열에서 부분 문자열의 위치 찾기 indexOf() 메서드
문자열에서 부분 문자열이 어디에 있는지 검색할 때 indexOf()를 사용합니다. 만약 찾는 문자열이 없으면 -1을 반환합니다.
위치는 배열의 인덱스 처럼 0부터 시작합니다.
{
let str ="Good morning!만나서 반갑습니다!";
// let lang = "반갑습니다!";
console.log(str.indexOf("d"));
console.log(str.indexOf("a"));
}
str.indexOf("od"):2
str.indexOf("a"):-1
만약같은 문자열이 있을때 그 첫번째 문자열위치가 아닌 두번째 문자열의 위치를 가져오고 싶을 때는 아래 처럼 사용합니다.
{
let str ="Good morning!만나서 반갑습니다!";
let firstindex = str.indexOf("o") //문자열에 첫번째의 o의 위치값을 가져와 변수로 지정
console.log(str.indexOf("o"), firstindex+1); // 그변수에 +1을 하여 다음 문자열의 위치값을 가져옵니다.
}
//str.indexOf("o"), firstindex+1 :2
문자열에 어떤 문자가 있는지 확인하기 starsWith(), endsWith(), includes() 메서드
특정 문자나 문자열로 시작하는지 확인하기 startsWith() 메서드
문자열이 특정 문자나 문자열로 시작하는지 확인하는 방법입니다.
이때 영문자의 대소문자를 구별하므로 주의 해여합니다 결괏값은 true나 false가 나옵니다.
위치를 함께 지정하면 특정 문자나 문자열이 해당 위치부터 시작하는지 확인할 수 있습니다.
{
let str ="Good morning!";
console.log(str.startsWith("Good"));
console.log(str.startsWith("good"));
console.log(str.startsWith("mo", 5));
}
// str.startsWith("Good") : true
// str.startsWith("good") : false
// str.startsWith("mo", 5) : true
문자열이 특정 문자나 문자열로 끝나는지 확인하기 endsWith() 메서드
문자열이 특정 문자나 문자열로 끝나는지 확인하는 방법입니다.
결괏값은 ture나 false가 나오고 영문자의 대소문자를 구별합니다.
메서드를 사용할 때 문자열과 함께 길이(length)를 함께 지정할 수 있습니다.
{
let str ="Hello, everyone.";
console.log(str.endsWith("one."));
console.log(str.endsWith("Everyone"));
console.log(str.endsWith("one.", 16));
}
str.endsWith("one.") : true;
str.endsWith("Everyone") : false;
str.endsWith("one.", 16) : true;
문자열에 특정 문자나 문자열이 포함되었는지 확인하기 includes() 메서드
문자열에 특정 문자나 문자열이 포함되었는지 확인하는 방법 입니다.
영문자의 대소문자를 구별합니다.
{
let str ="Hello, everyone.";
console.log(str.includes("one."));
console.log(str.includes("ever"));
}
// str.includes("one.") :true;
// str.includes("ever") :true;
문자열에서 공백 제거하기 trim(), trimStart(), trimEnd() 메서드
공백이란 문자열의 스페이스 바를 눌러 생긴 공백과 tab을 눌러입력한 공백, 줄을 바꾸기 위해 사용한 이스케이프 문자 등르 말합니다.연산을 사용하기 위해 공백을 제거 할 경우에 사용합니다.
{
let str =" AD CD EF ";
console.log(str.trim()); //문자열 앞뒤 공백 제거
console.log(str.trimStart());// 문자열 앞쪽공백 제거
console.log(str.trimEnd()); // 문지열 뒤쪽공백 제거
}
// str.trim():'AD CD EF'
// str.trimStart():'AD CD EF '
// str.trimEnd():' AD CD EF'
문자열의 대소문자 바꾸기 toUpperCase(), to LowerCase() 메서드
영문자의 문자열을 모두 대문자 또는 소문자로 변경 합니다.
{
let str ="Good morning.";
console.log(str.toUpperCase());
console.log(str.toLowerCase());
}
//GOOD MORNING.
//good morning.
부분 문자열 추출하기 substring(), slice() 메서드
substring()메서드
시작 위치 부터 끝 위치의 직전까지 추출해서 반환합니다.이때 끝위치의 직전까지 추출하고 끝위치는 포함하지않습니다. 끝 위치를 지정하지 않으면 시작부터 문자열 끝까지 추출해서 반환합니다.
{
let str ="Good morning.";
console.log(str.substring(5));
console.log(str.substring(0, 4)); // 시작위치, 끝위치
}
//morning.
//Good
slice()메서드
substring과 같지만 slice는 음수를 사용하여 끝부분에서 부터 위치를 찾아 추출합니다.
{
let str ="Good morning.";
console.log(str.slice(5));
console.log(str.slice(-5, 12)); /(시작위치, 끝위치)뒤에서 부터5번째에서 시작하고 12번째까지 추출합니다.
}
//morning
//ning
구분자에 따라 문자 쪼개기 split() 메서드
문자열에서 구분자를 기준으로 문자열을 쪼개 줍니다.
문자열을 단어별로 구별하려면 구분자를 공백(" ")으로 지정해서 실행시켜 새로운 배열을 반환합니다.
글자별로 구별할 때는 공백을 안넣어주고("")로 표시합니다.
{
let str ="Good morning.";
console.log(str.split(" "));
console.log(str.split(""));
}
//['Good', 'morning.']
//['G', 'o', 'o', 'd', ' ', 'm', 'o', 'r', 'n', 'i', 'n', 'g', '.']
출처:Do it! 한권으로 끝내는 웹 개발 교과서 웹 개발모던 자바스크립트 프로그래밍의 정석 책