유니코드 값을 문자열로 변환시켜주는 String.fromCharCode() 메서드와 그 반대로 특정 문자가 의미하는 유니코드값으로 변환시켜주는 String.prototype.charCodeAt() 메서드에 대해 알아보자.
▷ 구문
String.fromCharCode(num1[, ...[, numN]])
str.charCodeAt(index)
num1, ..., numN : UTF-16 코드 유닛인 숫자 뭉치며, 가능한 값의 범위는 0부터 65535까지이다. (유효성 검사를 하지 않으며, 초과하는 값은 잘린다.)
index : charAt() 메서드의 매개변수 처럼 0 이상이고 해당 문자열의 길이보다 작은 정수를 의미한다. (기본값은 0이다.)
▷ 예제 1) String.froCharCode() 메서드 기본 사용법
String.fromCharCode(65); // "A"
String.fromCharCode(65, 66, 67); // "ABC"
String.fromCharCode(0x2014); // "—"
String.fromCharCode(0x12014); // 숫자 '1'은 무시해서 "—"
String.fromCharCode(0x12345123452014); // "-"
우선 유니코드를 잘 몰라도 누구나 자주 봐왔던 알파벳 대문자 "A"의 유니코드가 65라는건 대부분 알 것이다.
문자열을 반환한다는 의미는 입력받은 매개변수 개수의 따라 합쳐진 결과를 보여주기 때문이다.
유니코드는 인터넷 검색하면 자세히 나오니 검색해서 따로 찾아보도록 하자.
▷ 예제 2) String.prototype.charCodeAt() 메서드 기본 사용법
'ABC'.charCodeAt(); // 65
'ABC'.charCodeAt(1); // 66
String.fromCharCode(65, 66, 67).charCodeAt(2); // 67
문자열을 대상으로 사용하는 메서드이며 해당 문자열의 특정 인덱스 문자값이 의미하는 유니코드 값을 반환해준다.
예제1 에서 봤겠지만 "A"가 의미하는 유니코드는 65를 의미하기때문에 65를 반환해주는것이며, 나머지도 마찬가지의 유니코드값을 반환해준다.
참고 : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/fromCharCode
참고 : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/charCodeAt
댓글