문자열을 이용한 순차 검색 등을 이용해 개별 요소가 숫자 데이터 혹은 문자 데이터일 경우 함수나 메소드 적용을 통해 원하는 결과를 얻고자 할 때, 그 결과로써 NaN
이나 undefined
를 만나지 않기 위해서는 데이터 검증의 과정을 거쳐야 합니다. 이럴 때 주로 사용하는 메소드들은 다음과 같습니다.
- isNaN(Number(char))
- Number.isInteger(Number(char))
isNaN()
은 숫자 데이터일 때 false
를 반환하고, Number.isInteger()
는 정수 데이터일 때 true
를 반환합니다.
그리고 문자열의 개별 요소가 문자 데이터인지 확인하기에 앞서 공백(" "
)인지 아닌지 확인하는 것이 우선입니다.
- if (char !== ' ' && ... )
그런 다음 알파벳 문자는 ASCII Code를 이용하여 대문자와 소문자를 구분할 수 있습니다.
- if( 65 <= str.charCodeAt(index) <= 90)
- if( 97 <= str.charCodeAt(index) <= 122)
ASCII Code(s)를 문자 데이터로 변환도 가능한데 이 때 사용되는 메소드는 다음과 같습니다.
String.fromCharCode(<ascii-code(s)>, ...)
참조: ASCII Code