[JS] String 오브젝트
by Roel DowneyString 오브젝트
- ABC 처럼 문자 처리를 위한 오브젝트
- String 오브젝트에 문자처리를 위한 함수와 프로퍼티가 포함되어 있으며 함수를 호출하여 문자 처리를 하게 된다.
문자열 연결 방법
예)
var book = "12" + "AB" + "가나";
console.log(book);
var book = "12" + "AB"
+ "가나";
console.log(book);
var concat = "abc \
가나다라";
console.log(concat);
실행 결과 )
12AB가나
12AB가나
abc 가나다라
설명)
1. 한줄에 작성하는 방법
2. 줄 분리해서 + 문자열 연결
3. 역슬래시(\)로 문자열 연결
프로퍼티 리스트
- new String() : 인스턴스 생성
String 함수
- String() : 문자열로 변환하여 반환
- fromCharCode() : 유니코드를 문자열로 변환하여 반환
String 프로퍼티
-length : 문자열의 문자 수 반환
String.prototype
-constructor : 생성자
- valueOf() : 프리미티브 값 반환
- toString() : 문자열로 변환
- charAt() : 인덱스 번째 문자 반환
- indexOf() : 일치하는 문자열 중에서 가장 작은 인덱스 반환
- lastIndexOf() : 일치하는 문자열 중에서 가장 큰 인덱스 반환
String.prototype
- Concat() : 문자열 연결
- toLowerCase() : 영문 소문자로 변환
- toUpperCase() : 영문 대문자로 변환
- trim() : 문자열 앞뒤의 화이트 스페이스 삭제
- subString() : 시작에서 끝 직전까지 값 반환
- substr() : 시작 위치부터 진정한 문자 수 반환
- slice() : 시작에서 끝 직전까지 값 반환. substring() 과 차이 있음
- match() : 매치 결과 반환
- replace() : 매치 결과를 지정한 값으로 대체
- search() : 검색된 첫 번째 인덱스 반환
- split() : 구분자로 분리하여 반환
- charCodeAt() : 인덱스 번째 문자를 유니코드로 반환
- localeCompare() : 값의 위치를 1,0,-1로 반환
String()
- 파라미터 값을 String 타입으로 변환하여 반환
- 값을 작성하지 않으면 빈 문자열 반환
예)
var value = String(123);
console.log(value);
console.log(typeof value);
console.log(typeof (""+ 123));
실행 결과 )
123
string
string
new String()
String 인스턴스를 생성하여 반환
파라미터 값을 String 타입으로 변환 : 파라미터 값이 프리미티브 값이 된다.
예)
var obj = new String(123);
console.log(typeof obj);
실행 결과 )
object
String 활용
length 프로퍼티 활용 예제
예)
var value = "ABC";
for(var k = 0; k < value.length; k++) {
console.log(value[k]);
};
실행 결과 )
A
B
C
- 화이트 스페이스 삭제 : trim
문자열 앞 뒤 화이트 스페이스 삭제
예)
var value = " abcd ";
console.log(value.length);
console.log(value.trim().length);
실행 결과 )
8
4
- 문자열 길이보다 인덱스가 크면 빈 문자열 반환, 일반적으로 존재하지 않으면 undefined 반환
인덱스의 문자 반환 : charAt()
예)
var value = "sporls";
console.log(value.charAt(1));
console.log(value[1]);
실행 결과 )
p
p
- indexOf() : data(검색 대상) 위치의 문자열에서 파라미터의 문자와 같은 첫 번째 인덱스를 반환
indexOf() 예제
예)
//1. 왼쪽에서 오른쪽으로 검색
var value = "123123";
console.log(value.indexOf(2)); // value에서 2가 두개이지만 처음 인덱스를 반환
console.log(value.indexOf(23)); // value에서 23이 존재하며 2가 검색된 인덱스를 반환
// 2. 두 번째 파라미터부터 검색 : indexOf(검색할 문자열, 검색 시작 위치(디폴트:0))
console.log(value.indexOf(2,3)); // value에서 3은 3번 인덱스부터 검색하므로 1이 아닌 4를 반환
// 3. 같은 문자가 없으면 -1 반환
console.log(value.indexOf(15));
실행 결과 )
1
1
4
-1
문자열 연결, 대 소문자 변환
- concat()
예)
var result = "sports".concat("축구",11);
console.log(result);
var obj = new String(123);
console.log(obj.concat("ABC");
실행 결과 )
sports축구11
123ABC
문자열 추출
- substring() : 파라미터 시작 인덱스부터 끝 인덱스 직전까지 반환
두번째 파라미터를 작성하지 않으면 반환 대상의 끝까지 반환
예)
var value = "01234567";
console.log(value.substring(2,5); // 2번 인덱스부터 5번 인덱스 직전까지 반환
console.log(value.substring(5);
실행 결과 )
234
567
문자열 추출
- substr() : 파라미터의 시작 인덱스부터 지정한 문자 수를 반환
- slice() : 파라미터의 시작 인덱스부터 끝 인덱스 직전까지 반환
예)
var value = "01234567";
console.log(value.substr(0,3));
console.log(value.slice(1,4));
실행 결과 )
012
123
정규 표현식을 사용할 수 있는 함수
- match() : 매치 결과를 배열로 반환
- replace() : 매치 결과를 파라미터에 작성한 값으로 대체하여 반환
- search() : 검색된 첫 번째 인덱스 반환, 매치 되지 않으면 -1 반환
- split() : 분리 대상을 분리자로 분리하여 배열로 반환
예)
var value = "Sports";
// /s/ : 정규 표현식으로 소문자 s를 매치 -> Sports에 끝에 s가 있으므로 매치되어 배열로 반환
console.log(value.match(/s/));
// spo는 첫문자가 S 대문자 이므로 null 반환
console.log(value.match("spo"));
console.log(value.replace("S","s"));
console.log(value.search(/o/));
console.log("12_34_56".split("_"));
실행 결과 )
[s]
null
sports
2
[12,34,56]
'Web > JavaScript' 카테고리의 다른 글
[JS] Function 오브젝트 (0) | 2022.01.19 |
---|---|
[JS] Object 오브젝트 (0) | 2022.01.17 |
[JS] Number 오브젝트 (0) | 2022.01.12 |
[JS] 오브젝트(Object) (0) | 2022.01.04 |
[JS] 함수(Function) (0) | 2022.01.03 |
블로그의 정보
What doing?
Roel Downey