July 21st 2018
String의 Length 속성을 사용하면 쉽게 string의 길이를 알 수 있습니다.
하지만, length 속성을 사용하지 않고 어떻게 알아낼 수 있을까요?
바로, String의 slice() 메소드를 사용할 수 있습니다.
function stringLength(string) {
var length = 0;
for (var i = 0; string.slice(i) != ''; i++) {
length += 1;
}
return length;
}
stringLength('dog'); // => 3
String.slice() Method는 String의 일부 또는 전체 문자를 추출하여 새로운 문자열을 생성합니다. Parameter로는 문자를 추출할 시작 index값, 두 번째 Parameter로는 end index값을 받습니다. 음수를 받을 경우 (strLength - 숫자)로 실행됩니다. (feat. MDN)
위의 코드를 다시 보면, i = 0 ; string.slice(0) -> 'dog' ; i++ -> 1 => length = 1 i = 1 ; string.slice(1) -> 'og' ; i++ -> 2 => length = 2 i = 2 ; string.slice(2) -> 'g' ; i++ -> 3 => length = 3 i = 3 ; string.slice(3) -> '' ==> false로 for문 종료 return 값으로 변수 length의 값 3
위와 같이 slice() 메소드를 사용해 String의 문자열 길이를 알아봤습니다.
저는 이제 막 배우기 시작했고, 초보이기에 다른 여러 방법도 저에게 알려주시면 너무 감사하겠습니다.