이 전에 자바스크립트 문자열(String) 메소드
startsWith()에 대하여 알아보았습니다. 오늘은 비슷한 정 반대로 동작하는
endsWith() 메소드에 대하여 알아봅니다.
관련 링크 바로가기 >https://webisfree.com/2020-11-17/lodash-startswith()-메소드-알아보기# 자바스크립트 endsWith() 메소드 알아보기자바스크립트에서
endsWith() 메소드는 String에 사용하는 메소드로 주어진 문자열의 끝에서부터 특정 텍스트가 일치하는지 확인하는 데 사용되고 그
결과를 Boolean 값인 true 또는 false를 반환합니다. 간단한 endsWith() 메소드의 문법은 다음과 같습니다.
String.endsWith(찾을 문자열, 길이);//
String : 일치하는지 검사할 대상 문자열
//
찾을 문자열 (Required) : 대상 문자열의 끝에서 부터 찾을 문자열
//
길이 (Option) : 대상 문자열 검사시 특정 길이를 설정할 수 있는 값(Default. 전체 길이)
그럼 이를 사용하여 간단한 예제를 만들어보겠습니다.
! endsWith() 예제보기만약 아래와 같은 문자열이 존재하는 경우 각각 어떻게 결과를 나타내는지 알아볼 수 있습니다.
const myStr = 'Hello Webisfree.com';
myStr.endsWith('Hello Webisfree.com');
myStr.endsWith('Webisfree.com');
myStr.endsWith('com');
// Results
true;
true;
true;
위 결과는 모두 true를 반환합니다. 모두 뒤에서 부터 일치하기 때문입니다. 여기서
만약 대소문자 구분을 하지 않는다면 어떻게 될까요? 아래를 봐주세요.
myStr.endsWith('webisfree.com');
myStr.endsWith('hello Webisfree.com');
// Results
false;
false;
대소문자가 맞지 않는 경우 false를 반환하게 됩니다.
[ 참고 ]만약 대소문자 상관없이 비교하려면? 이 경우 방법은 둘 다 모두 소문자 또는 모두 대문자로 변경 후 비교하면 됩니다.
myStr.toLowerCase().endsWith('webisfree.com'.toLowerCase());
// Results
true;
@ 두 번째 인자로 길이 설정 후 endsWith() 사용하기다음으로 길이를 설정하는 방법입니다. 다음의 결과는 어떻게 될까요?
'webisfree'.endsWith('free', 9);
'webisfree'.endsWith('free', 8);
// Results
true;
false;
뒤의 길이는 비교 할 대상이 되는 문자열의 길이를 정하게 됩니다. 그래서 첫 번째 예제의 9는 전체 길이를 모두 사용하므로 'webisfree'의 끝에 'free'가 있는지 확인하므로 true를 반환하죠. 하지만 다음의 8의 값은 'webisfre'만 비교하기 때문에 'free'와 일치하지 않습니다. 물론 'fre'인 경우는 일치합니다.
'webisfree'.endsWith('fre', 8);
// Results
true;
추가로 빈 값인 경우는 어떻게 반환될까요?
myStr.endsWith('');
// Result
true;
위의 결과는 true입니다. 다만 아래의 경우는 모두 false를 반환합니다.
myStr.endsWith();
myStr.endsWith(null);
myStr.endsWith(undefined);
// All Results
false;
여기까지 문자열 메소드 endsWith()에 대하여 알아보았습니다.