Javascript Code Conventions

Javascript의 코딩 스타일은 Java와 거의 같다. camelcase 를 사용하며 underscore 는 특별한 경우가 아니면 사용하지 않는다. 객체 정의를 위한 function의 이름 첫글자는 대문자로 쓴다.

function Person(name, age) {
    this.name = name;
    this.age = age;
    // ...
}

들여쓰기는 공백문자 네개를 사용한다. tab은 에디터 또는 사용자마다 다를 수 있으므로 사용하지 않는다. tab을 사용하는게 공백문자 네개를 사용하는것 보다 파일 싸이즈는 줄어들 수 있지만 compress를 해버리면 차이가 없어 진다.

자바스크립트는 변수 선언에 자유로운 언어이다. 즉, 선언하지 않아도 할당할 수 있다. 하지만 가독성, 잠재적인 버그 방지를 위해 변수 선언은 해주는것이 좋다.

var i = 10;

(function () {
    for(var i = 0; i < 5; i++ ) {
        console.debug(i);
    }
})();

console.debug(i); // 10이 출력된다. 만약 var가 없다면 5가 출력된다.


한줄에 여러개의 변수를 동시에 선언 및 할당을 할 수 있지만 혼란을 주어서는 안된다.

var height = 166, weight = 50;
var firstName;
var lastName;


자바스크립트로 프로그래밍을 하다 보면 들여쓰기 레벨이 복잡해지는 경우가 많은데 아래처럼 코딩하면 된다.


var collection = (function () {
    var keys = [], values = [];


    return {
        get: function (key) {
            var at = keys.indexOf(key);
            if (at >= 0) {
                return values[at];
            }
        },
        set: function (key, value) {
            var at = keys.indexOf(key);
            if (at < 0) {
                at = keys.length;
            }
            keys[at] = key;
            values[at] = value;
        },
        remove: function (key) {
            var at = keys.indexOf(key);
            if (at >= 0) {
                keys.splice(at, 1);
                values.splice(at, 1);
            }
        }
    };
}());

댓글

이 블로그의 인기 게시물

미적분과 차원

자바 로깅

apache rewrite_module 로그