on
문자 데이터/String.prototype.메서드( )
문자 데이터/String.prototype.메서드( )
JavaScript를 만들 때 데이터를 처리하는 것이 웹사이트를 만들 때 가장 중요하다.
그러므로 자바스크립트의 데이터를 숙달해야 한다.
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String
String
String 전역 객체는 자바스크립트 전체 영역에서 사용할 수 있는 객체라는 뜻이다.
문자열의 생성자 라고 하는데 여기서 문자열은 문자 데이터를 의미한다.
문자열 리터럴 방식은 다음과 같이 나타낸다.
'string text'
"string text"
객체데이터는 { } / 배열 데이터는 [ ]을 리터럴 방식으로 나타나게 했다.
이렇게 기호를 사용해서 데이터를 만드는 것을 리터럴 방식이라고 한다.
String.prototype.indexOf()
indexOf() 메서드는 호출한 String 객체에서 주어진 값과 일치하는 첫 번째 인덱스(즉, 숫자를 반환)를 반환합니다.
일치하는 값이 없으면 -1을 반환합니다.
prototype을 통해서 지정한 메서드는 메모리에 딱 한 번만 만들어지고 앞에 있는 생성자가
new라는 키워드로 만들어내는 인스턴스로 언제든지 활용할 수 있다.
즉, new string () 이라는 생성자 함수를 통해서
리터럴 방식으로 " " 만든 하나의 문자 데이터에
직접적으로 indexOf()라는 메서드를 사용할 수 있다.
다음을 예시를 보고 이해해보자.
이렇게 문자데이터 뒤쪽에다가 직접적으로 indexOf 메서드를 사용할 수가 있다.
이렇게 인수로 'world'라는 단어를 입력 후
이 코드 부분에서 반환이 되는 것이고
그렇게 반환된 내용을 result라는 변수에서 받아서
콘솔 창으로 결괏값을 나타낸다.
다음과 작성 후 저장을 해보면 다음과 같은 결괏값이 나온다.
예를 들어 다음과 같이 일치하는 문자가 없을 때는
음수의 숫자 값이 나오게 된다.
문자 데이터 내부에서 찾을 수 없다는 뜻이다.
만약 해당 문자가 들어있는지 불린 데이터로 확인을 하고 싶으면
!== 비교연산자를 통해서 -1 이 있는지 없는지
불린 데이터로 확인시킬 수 있다.
vs코드에서 다음과 같이 실습을 해보자
String.length
length 속성은 UTF-16 코드 유닛을 기준으로 문자열의 길이를 나타냅니다.
위와 같이 str.length 속성을 입력하면
str변수의 개수를 length라는 프로토콜로 계산해 준다.
length라는 것을 string 객체에 prototype으로 사용할 수 있도록
만들어져 있으므로
이와 같이 변수를 지정하지 않고 바로 직접적으로 메서드로 사용할 수 있다.
띄어쓰기도 공백 문자 이므로 세어준다.
String.prototype.slice()
slice(시작 부분 , 몇 번째의 그 직전까지 추출) 잘라낼 것이냐 나타냄
slice() 메소드는 문자열의 일부를 추출하면서 새로운 문자열을 반환한다.
str.slice(beginIndex [, endIndex])
String.prototype.replace()
앞에 있는 문자 데이터에서 첫 번째 해당하는 문자를 찾아서 두 번째 인수로 해당하는 교체를 해주는 것이다.
String.prototype.match()
match()라는 메서드는 특정한 문자 데이터에서
정규표현식을 통해서 특정한 문자를 매치시킬 수 있고
일치를 시켜서 그것을 배열 데이터로 반환을 하는데 그 배열 데이터 내부에서
우리가 원하는 정보를 추출해서 사용할 수 있다.
정규표현식을 사용함, 배열의 첫 번째 부분을 사용함
String.prototype.trim()
trim() 메서드는 문자열 양 끝의 공백을 제거합니다.
공백이란 모든 공백 문자(space, tab, NBSP 등)와 모든 개행 문자(LF, CR 등)를 의미합니다.
모든 공백 문자를 제거하겠다고 명령을 동작시킬 수 있다.
from http://dhstory311.tistory.com/162 by ccl(A) rewrite - 2021-10-01 02:27:18