문자열은 문자들이 나열된 것을 뜻한다.
d = 문자
duckchun = 문자열
이때 자바스크립트에서의 문자열은 쌍따옴표 또는 따옴표로 묶여있어야 한다.
"duckchun"
또한 문자열은 개별로 인덱스가 존재하는데,
첫 번째 인덱스가 0부터 시작한다는 것만 기억하면 될 것 같다.
index | [0] | [1] | [2] | [3] | [4] | [5] | [6] | [7] |
string | d | u | c | k | c | h | u | n |
문자열(String)의 개별 문자(Character)에 접근하기 위해서는
해당 문자열의 문자의 인덱스를 대괄호 []로 묶어서 접근하면 된다.
즉,
"duckchun"[1] 과 같이 작성하면
"u"로 접근할 수 있다.
문자열은 length라는 특별한 프로퍼티가 존재한다.
length 프로퍼티는 해당 문자열의 인덱스에 +1을 한 값을 호출한다.
즉, length 프로퍼티는 해당 문자열의 길이를 호출하며,
"duckchun".length는 7을 호출한다.
위를 이용해 함수를 하나 작성해보며 문자열의 개념을 이해해보자.
문제)
아래 호출을 보고 logString 함수를 작성해보자.
logString은 문자열을 인수로 받고, 재귀(recursive)를 통해 해당 함수를 실현할 수 있다.
const a = logString('')
// undefined 가 리턴된다. 아무 문자열도 전해주지 않았기 때문.
const c = logString(' ')
/*
" " (빈 공간)
*/
const b = logString('Hello')
/*
h
e
l
l
o
*/
풀이)
const logString = (str, i = 0) => {
if (str.length <= i) {
return
}
console.log(str[i])
return logString(str, i + 1)
}
length 프로퍼티를 통해 문자열의 길이를 뽑아내고,
i를 통해 인덱스 0 부터 호출할 수 있도록 한다.
문자열의 길이가 i보다 작거나 같다면
undefined를 호출한다. (= 아무것도 호출하지 않은 값을 호출한다)
'Javascript' 카테고리의 다른 글
소수(Prime number) 구하기 및 jest를 이용한 테스트 케이스 작성 (0) | 2022.08.04 |
---|---|
입력한 숫자 만큼 문자열 뒤쪽 출력하기 (0) | 2022.08.02 |
고찰 (조건식에 boolean 값을 넣었을 때) (0) | 2022.08.02 |
(자바스크립트) 클로저, 함수 연계 연습 (0) | 2022.08.01 |
(자바스크립트) 클로저(Closure) (0) | 2022.07.31 |