모든 JavaScript 프로젝트에 대해 항상 동일한 코딩 규칙을 사용해야한다.
코딩 규칙은 프로그래밍을 위한 스타일 지침이다. 일반적으로 아래 내용을 다룹니다.
코딩 규칙은 품질을 보장한다:
이번 장은 W3Schools에서 사용하는 일반적인 JavaScript 코드 규칙을 설명한다.
또한 다음 장의 "모범 사례"를 읽고 코딩 함정을 피하는 방법을 배워야 한다.
W3schools에서는 식별자 이름(변수 및 함수)에 camelCase를 사용한다.
모든 이름은 문자(letter)로 시작한다.
이 페이지의 맨 아래에서 명명 규칙에 대한 광범위한 자료를 찾을 수 있다.
firstName = "John";
lastName = "Doe";
price = 19.90;
tax = 0.20;
fullPrice = price + (price * tax);
항상 연산자( = + - * / )와 쉼표 뒤에 공백을 넣어야 한다.
Examples:
let x = y + z; const myArray = ["Volvo", "Saab", "Fiat"];
코드 블록의 들여쓰기에는 항상 2개의 공백을 사용해야한다.
Functions:
function toCelsius(fahrenheit) { return (5 / 9) * (fahrenheit - 32); }
들여쓰기에 탭(tabulator)을 사용하면 안된다. editors는 탭을 다르게 해석할 수 있다.
간단한 문장에 대한 일반 규칙:
Examples:
const cars = ["Volvo", "Saab", "Fiat"]; const person = { firstName: "John", lastName: "Doe", age: 50, eyeColor: "blue" };
복잡한(복합) 문에 대한 일반 규칙:
Functions:
function toCelsius(fahrenheit) { return (5 / 9) * (fahrenheit - 32); }
Loops:
for (let i = 0; i < 5; i++) { x += i; }
Conditionals:
if (time < 20) { greeting = "Good day"; } else { greeting = "Good evening"; }
객체 정의에 대한 일반 규칙:
Example
const person = { firstName: "John", lastName: "Doe", age: 50, eyeColor: "blue" };
짧은 객체는 다음과 같이 속성 사이에만 공백을 사용하여 한 줄에 압축하여 쓸 수 있다.
const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
가독성을 위해 80자보다 긴 줄은 피해야한다.
JavaScript 문이 한 줄에 맞지 않는 경우 가장 좋은 위치는 연산자 또는 쉼표 뒤다.
Example
document.getElementById("demo").innerHTML = "Hello Dolly.";
모든 코드에 대해 항상 동일한 명명 규칙을 사용해야한다. 예를 들어:
이것은 프로그래머가 자주 토론하는 질문이다. 대답은 묻는 사람에 따라 다르다.
HTML 및 CSS의 하이픈:
HTML5 속성은 data-(data-quantity, data-price)로 시작할 수 있습니다.
CSS는 속성 이름(글꼴 크기)에 하이픈을 사용합니다.
하이픈은 빼기 시도로 오인될 수 있다.
JavaScript 이름에는 하이픈을 사용할 수 없다.
Underscores:
많은 프로그래머는 특히 SQL 데이터베이스에서 밑줄(date_of_birth)을 사용하는 것을 선호한.
밑줄은 PHP 문서에서 자주 사용된다.
PascalCase:
PascalCase는 종종 C 프로그래머가 선호한다.
camelCase:
camelCase는 JavaScript 자체, jQuery 및 기타 JavaScript 라이브러리에서 사용된다.
$ 기호로 이름을 시작하면 안된다. 많은 JavaScript 라이브러리 이름과 충돌하게 되기 때문이다.
외부 스크립트를 로드하는 데 간단한 구문을 사용한(유형 속성은 필요하지 않음).
<script src="myscript.js"></script>
"정확하지 않은(untidy)" HTML 스타일을 사용하면 JavaScript 오류가 발생할 수 있다.
아래 두 JavaScript 문은 다른 결과를 생성한다.
const obj = getElementById("Demo") const obj = getElementById("demo")
가능하면 HTML에서 동일한 명명 규칙(JavaScript와 같이)을 사용하자.
HTML 스타일 가이드 참조
HTML 파일에는 .html 확장자가 있어야 한다(.htm 허용).
CSS 파일의 확장자는 .css여야 한다.
JavaScript 파일에는 .js 확장자가 있어야 한다.
대부분의 웹 서버(Apache, Unix)는 파일 이름에 대해 대소문자를 구분한다.
london.jpg는 London.jpg로 액세스할 수 없다.
다른 웹 서버(Microsoft, IIS)는 대소문자를 구분하지 않는다.
london.jpg는 London.jpg 또는 london.jpg로 액세스할 수 있다.
대문자와 소문자를 혼합하여 사용하는 경우 매우 일관성이 있어야 한다.
대소문자를 구분하지 않는 서버에서 대소문자를 구분하는 서버로 이동하면 작은 오류로도 웹 사이트가 손상될 수 있다.
이러한 문제를 방지하려면 항상 소문자 파일 이름을 사용해야한다(가능한 경우).
코딩 규칙은 컴퓨터에서 사용되지 않는다. 대부분의 규칙은 프로그램 실행에 거의 영향을 미치지 않기 때문이다.
들여쓰기 및 추가 공백은 작은 스크립트에서 중요하지 않다.
개발 중인 코드의 경우 가독성이 우선되어야 한다. 더 큰 프로덕션 스크립트는 최소화해야 한다.