안녕하세요. 오늘은 자바스크립트의 문자열 다루기에 대해 알아보겠습니다.
1. 문자열 변수 선언
var string1 = 'This is string';
var string2 = "This is string";
자바스크립트에서 문자열은 '' or "" 로 감싸 변수를 선언합니다.
2. 문자열 길이 length
var string = 'This is string';
console.log(string1.length); // 14
문자열의 길이는 string 객체의 length 프러퍼티를 사용하여 간단하게 알아볼 수 있습니다. 예제를 보면 띄어쓰기도 한 문자로 취급하는 것을 알 수 있습니다.
3. 문자열 찾기 indexOf()
var string1 = 'This is string';
console.log(string1.indexOf('string')); // 8
console.log(string1.indexOf('t')); // 9
console.log(string1.indexOf('not')); // -1
문자열 안에서 특정 문자열이 존재하는지 알아보러면 indexOf 메서드를 사용하면 됩니다.
변수에 찾는 문자가 포함되어 있으면 그 문자가 시작되는 index 번호를 출력한다.
만약 문자열이 여러번 포함되어 있으면 마지막에 찾은 문자열의 index 번호가 출력된다.
그리고 문자열을 찾지 못했을 경우 -1을 출력한다.
var fruit = 'apple, banana, peach';
if(fruit.indexOf('banana') !== -1){
// 문자열이 포함되어 있으면
} else {
// 포함되어 있지 않다면
}
indexOf() 메서드는 다음과 같이 if ~ else 문과 함께 활용할 수 있다.
4. 문자열 자르기
자바스크립트에서 문자열을 자르는 방법에는 여러 가지가 있습니다.
1) substring()
substring(시작인덱스, 종료인덱스)
var string = 'Today is Monday';
console.log(string.substring(0,5)); // Today
console.log(string.substring(6,8)); // is
console.log(string.substring(9,15)); // Monday
substring 메서드는 파라미터에 반환할 문자열의 index 번호를 넣어 문자열을 추출한다. 시작index부터 종료index 바로 전 문자까지만 추출합니다. 유의하여 사용해야 합니다.
substring(시작인덱스)
var string = 'Today is Monday';
console.log(string.substring(0)); // Today is Monday
console.log(string.substring(6)); // is Monday
substring 메서드에 시작 index만 넣으면 시작 index부터 마지막 index 까지의 문자열을 반환합니다.
substring() 뒤에서부터 자르기
var string = 'Today is Monday';
console.log(string.substring(string.length, string.length-6)); // Monday
substring의 첫번째 파라미터가 두번째 파라미터보다 클 경우 첫번째와 두번째 사이의 문자열을 추출하게 됩니다. 이를 이용하여 문자열의 길이를 이용하여 뒤에서부터 원하는 만큼의 문자열을 추출할 수 있습니다.
2) split()
split('나눌문자')
var string = 'My-name-is-Hong';
string.split('-'); // [ 'My', 'name', 'is', 'Hong' ]
split() 메서드는 특정 문자를 기준으로 문자열을 잘라 배열로 반환합니다.
var string = 'My-name-is-Hong';
var array = string.split('-');
for (let i = 0; i < array.length; i++) {
console.log(array[i])
}
다음과 같이 split() 메서드로 반환된 배열을 for문을 사용하여 문자열을 출력할 수 있습니다.
5. 문자열 앞뒤 공백 제거 trim()
var string = ' My-name-is-Hong ';
console.log(string.trim()); // My-name-is-Hong
문자열의 앞뒤 공백을 제거하려면 trim 메서드를 사용해야 합니다.
var name = ' ';
if(name.trim() !== ''){
// 빈 문자열이 아니라면
} else {
// 빈 문자열이라면
}
if예제와 같이 if문과 trim 메서드를 활용하여 코드를 작성할 수 있습니다.
'javascript' 카테고리의 다른 글
[DOM] Document.querySelectorAll() (0) | 2019.04.14 |
---|---|
[DOM] Document.querySelector() (0) | 2019.04.11 |
댓글