식별자는 특수문자를 제외한 문자, 숫자, 언더스코어(_) 달러($) 기호를 포함할 수 있다.
숫자로 시작하는 것은 허용하지 않는다.
예약어는 식별자로 사용할 수 없다.
변수는 쉼표(,)로 구분해 하나의 문에서 여러개를 한번에 선언할 수 있지만 가독성이 나빠지므로 권장하지 않는다.
식별자를 만들때 유니코드문자를 허용하므로 알파벳 외의 한글이나 일본어도 식별자로 사용할 수 있지만 바람직하지 않다.
네이밍 컨벤션을 따른다.
네이밍 컨벤션이란 하나 이상의 영어 단어로 구성된 식별자를 한눈에 구분하기 위해 규정된 명명규칙이다.
/*네이밍 컨벤션 */
//카멜 케이스(camelCase) -> 중간 글자들은 대문자로 시작하지만 첫 글자가 소문자인 경우에는 낙타와 모양이 비슷하다 하여 카멜 케이스라고 한다.
var firstName;
// 스네이크 케이스(snake_case) -> 언더바(_) 가 들어 있는 표현 방식을 뱀처럼 생겼다고 하여 스네이크 케이스라고 한다.
var first_name;
// 파스칼 케이스(pascalCase) -> 첫 글자와 중간 글자들이 대문자인 경우 파스칼 언어의 표기법과 유사하다고 하여 파스칼 케이스라고 한다.
var FirstName;
//헝가리언 케이스
var strFirstName; //type + indentifier
var $elem = document.getElementById('myId') //dom 노드
var ovservable$ = fromEvent(document, 'click'); RxJS 옵저버블
일관성을 유지한다면 어떤 네이밍 컨벤션을 사용해도 좋지만 자바스크립트에서는 일반적으로 변수나 함수의 이름에는 카멜케이스를 사용하고, 생성자 함수, 클래스의 이름에는 파스칼케이스를 사용한다. 따라서 코드의 가독성을 높이기 위해서는 카멜케이스와 파스칼 케이스를 따르는것이 유리하다.
틀린 지식에 대해서는 가감없이 지적 해주시길바랍니다