입력받아지는 값에서 항상 첫 번째 문자를 가져와야하는 경우가 생겼다.
이럴 때 어떻게 해야할까?
흔히들 대괄호([])를 많이 사용하지만 메서드도 있다. 인덱스를 이용해 부분 문자를 가져오는 것은 같으나 기능이 조금 다르다.

charAt

  • 문자열에서 특정 인덱스에 위치하는 문자를 가져오는 메서드이다.
  • 문법: str.charAt(index)
  • index가 문자열의 길이보다 길거나 음수일 경우 빈문자열을 반환하며, index를 생략하면 기본값으로 0를 설정되어 첫문자를 반환한다.
var str = "abcdefghi";

str.charAt(1); // "b"
str.charAt(9); // ""
str.charAt(str.length-1); // "i"
str.charAt(-1); // ""
str.charAt(); // "a"

대괄호 []

  • 문법: str.[index]
  • 대괄호 안에 위치 값을 넣으면 문자열에서 해당 인덱스에 위치하는 문자를 가져올 수 있다.
  • charAt과 달리 메서드가 아니므로 반환하는 것이 아니다.
  • index가 문자열의 길이보다 길 경우 undefined, 음수일 경우 문자열의 끝에서 음수의 절대값만큼 거꾸로 계산된다. 또한 index를 생략하여 사용할 수 없다.
var str = "abcdefghi";

console.log(str[1]); // "b"
console.log(str[9]); // undefined
console.log(str[str.length-1]); // "i"
console.log(str[-1]); // "i"
console.log(str[]); // Error