9.1.4 식별자 명명 규칙
변수나 상수를 선언하고 식별자를 지정할 때 몇 가지 규칙이 있습니다. 이 규칙은 언어적 차원에서 강제적인 것도 있고, 관용적인 것도 있습니다. 강제 규칙은 지키지 않을 경우 프로그래밍 언어 자체에서 오류를 발생시킵니다. 따라서 표 9-2에 나온 내용은 꼭 지켜야 합니다.
표 9-2 강제적 식별자 명명 규칙
규칙 |
불가능 예 |
식별자에 키워드 사용 불가 |
var, let, const |
식별자에 공백 포함 불가 |
my School, like food |
식별자의 첫 글자는 영문 소문자, _(언더스코어), $ 기호만 사용 |
*name, #age, @email |
관용 규칙은 지키지 않아도 프로그래밍 언어에서 오류를 발생시키진 않지만, 되도록 지키는 것이 좋습니다.
표 9-3 관용적 식별자 명명 규칙
규칙 |
좋은 예 |
나쁜 예 |
식별자는 영문으로만 작성 |
name, age |
이름, 나이 |
식별자는 의미 있는 단어로 작성 |
name, age(이름과 나이 저장 시) |
a, b(이름과 나이 저장 시) |
자바스크립트에서 식별자를 표기하는 방법은 대표적으로 카멜 표기법(camel case), 언더스코어 표기법(underscore case), 파스칼 표기법(pascal case)이 있습니다.
표 9-4 식별자 표기법
표기법 |
설명 |
예 |
카멜 표기법 |
변수명과 함수명 작성 시 사용 |
firstName, lastName |
언더스코어 표기법 |
상수명 작성 시 사용 |
FIRST_NAME, last_name |
파스칼 표기법 |
생성자 함수명 작성 시 사용 |
FirstName, LastName |
카멜 표기법
카멜 표기법은 마치 낙타(camel)의 혹처럼 글자 높이가 내려갔다가 올라간다고 해서 이름 지어진 표기법입니다. 첫 글자는 영문 소문자로 시작하고, 2개 이상의 단어가 조합되면 각 단어의 첫 글자는 대문자로 표기합니다. 주로 변수명이나 함수명, 객체의 속성명을 지을 때 사용합니다.
TIP | 함수와 객체는 이후에 배우지만, 변수의 식별자를 설명하기 위해 잠시 언급했습니다. 자세한 내용은 10장 자바스크립트 함수 다루기와 11장 자바스크립트 객체 다루기에서 설명합니다.
언더스코어 표기법
언더스코어 표기법은 2개 이상의 단어가 조합될 때, 각 단어를 _ 기호로 연결해 표기하는 방법입니다. 상수의 식별자를 지을 때 사용합니다.
파스칼 표기법
파스칼 표기법은 각 단어의 첫 글자를 대문자로 작성하는 방법입니다. 자바스크립트에서 생성자 함수명을 지을 때 사용합니다.