본문 바로가기

프로그래밍 세상/자바스크립트 이야기

제 2장 어휘 구조

어휘구조(lexical structure)

                               프로그램을 어떻게 작성해야 하는지를 명시하는 기본적인 규칙

1. 문자집합

 
  • 7bit ASCII : 영어를 나타내는데 적합
  • 8bit ISO Latin-1 : 주요 서유럽 언어를 나타내는데 적합
  • 16bit Unicode 문자 집합 : 대부분의 문자를 표현
  • Unicode 문자 집합 : 자바스크립트 프로그램에서 사용된다.
                                 국제화를 위해 중요하며 영어를 모국어로 쓰지 않는 프로그래머들에게 유용

 


2. 대소문자 구분
 
  • 자바스크립트는 대소문자를 구분하는 언어이다.
  • 키워드, 변수, 함수이름, 그밖의 모든 다른 식별자들을 일관되게 대소문자를 구별해 입력해야 한다.
    단, HTML은 대소문자를 구별하지 않는다.

 



3. 공백과 줄나눔
 
  • 자바스크립트는 프로그램 내 토큰 사이에 존재하는 스페이스나 탭, 줄바꿈(newline)등을 무시한다.
    단, 줄바꿈 위치에 관해서는 작은 제약사항이 존재한다.

4. 선택적인 세미콜론 사용
 
  • 세미콜론(;)은 각 문장을 구분하는 역할을 한다.
  • 세미콜론은 항상 사용하자.
    단, 몇가지 예외 상황이 존재한다.
    1) 코드를 2줄로 나눌 때 앞줄이 온전한 문장 형태라면, 자바스크립트는 대신해서 세미콜론을 삽입한다.
    2) return, break, continue 문장을 사용할 때는 조심하자.
        return
        true;
        인 경우는 return true;를 예상하고 코딩했겠지만, return; true; 로 작성되어 엉뚱하게 실행될 수 있다.

 


5. 주석
 
  • 여러 스타일 주석을 지원한다.
    // 한줄짜리 주석
    /* 이것도 주석 */
    /*
        여러줄
        주석
    */

6. 리터럴
  프로그램에 직접 나타나는 데이터 값. 다음은 모두 리터럴이다.
 12                       // 숫자 12
 1.2                      // 숫자 1.2
 "hello world"         // 문자열
 'Hi'                      // 다른 문자열
 true                    // 불리언 값
 /[0-9]/g              // '정규표현식' 리터럴
 null                      // 객체가 존재하지 않음

 ECMAScript v3에서는 배열과 객체 리터럴을 위한 표현식도 지원한다.
 { x:1, y:2 } // 객체초기자
 [1,2,3,4,5]  // 배열 초기자

7. 식별자
 식별자는 이름이다.
 변수나 함수에 이름을 붙이거나 코드 내 루프 문에 레이블을 붙이는데 사용된다.
 첫번째 문자는 알파벳(letter), 밑줄(_) 혹은 달러 표시($)여야 한다.
 숫자는 첫번째 문자로 허용도지 않는다.

8. 예약어
 자바스크립트는 몇 가지 예약되어 있는 키워들이 존재한다.
 이러한 예약어는 자바스크립트에 의해 미리 정의된 전역 변수나 함수의 이름을 식별자로 사용하지 말아야 한다.
 예약어는 많은 사이트에서 참조하길 바란다.

참조문서 : 자바스크립트 완벽 가이드