1. JS 파일 관리 코드를 사용하십시오
모든 코드는 가능한 한 JS 파일에 배치 한 다음 스크립트를 사용하여 HTML 파일로 가져와야합니다. 그것을 소개 할 때, 바디 태그에주의를 기울이고 유형이나 언어를 사용하지 마십시오.
2. 쓰기 쓰레기
4 개의 빈 공간을 사용하여 들여 보내고 탭 키를 사용하여 들여 쓰지 않도록주의하십시오.
3. 문장이 깨는
라인의 길이에주의하십시오. 각 라인은 80 자를 초과하지 않습니다. 그것을 초과하면 적절한 문장을 끊으십시오. 문장 파괴는 연산자 이후에 수행되어야합니다. 이상은 쉼표 (,) 이후 문장을 깨는 것입니다. 문장이 깨지면 다음 줄은 8 개의 그리드를 사용하여 들여 쓰기됩니다.
4. 노트
단일 라인 댓글은 일반적으로 사용되며 블록 주석은 일반적으로 문서에 사용됩니다.
5. 변수 선언
모든 변수는 사용하기 전에 선언되며, 선언되지 않은 변수는 자동으로 글로벌 변수로 사용됩니다. 글로벌 변수는 전체 텍스트에서 덜 사용해야합니다.
하나의 VAR에서 모든 변수 선언을 구현하는 것이 가장 좋습니다. 각 선언은 별도의 줄을두고 주석 지침을 추가합니다. 모든 선언 된 변수를 문자 순서로 나열 할 수있는 경우 다음과 같이.
코드 사본은 다음과 같습니다.
var currententry, // 현재 선택된 테이블 항목
수준; // 들여 쓰기 레벨
기능 본문의 상단에있는 모든 변수를 정의하고 Var는 기능 본문의 첫 번째 줄에 나타납니다.
6. 기능 선언
All functions should be declared before use and after variables --------------------------------------------------------------------------------------------------------------------
함수 이름과 괄호 안에는 공백이 없어야합니다. 닫는 브래킷 사이에는 공백이 없어야합니다 (함수 매개 변수 사이에 공백이 없어야합니다. 기능 본문은 4 개의 공간으로 들여 쓰기됩니다. 기능 본체 종료 브래킷}은 함수 선언 키워드 함수 첫 문자와 정렬됩니다. 다음 코드 :
코드 사본은 다음과 같습니다.
기능 외부 (c, d) {
var e = c * d;
기능 내부 (a, b) {
반환 (e * a) + b;
}
내면의 반환 (0,1);
}
기능과 객체는 표현식을 배치 할 수있는 모든 곳에 배치 할 수 있습니다.
익명 기능 키워드 기능 및 오프닝 브래킷 (그 사이에 공간이 있습니다.
글로벌 기능을 최대한 적게 사용하십시오.
함수의 즉각적인 실행을 위해서는 변수의 값이 함수 자체가 아닌 함수 실행의 결과임을 명확히하기 위해 전체 호출 표현식을 한 쌍의 브래킷 ()에 배치해야합니다. 다음 코드 :
코드 사본은 다음과 같습니다.
var result = (function () {
var key = "";
반품 {
get : function () {
리턴 키;
},
세트 : 함수 (키) {
키 = 키;
}
};
} ());
7. 이름 지정
문자, 숫자 및 밑줄로 이름을 지정하고 국제 캐릭터, 달러 표지판, $ 및 백 슬래시를 사용하지 마십시오.
밑줄을 이름의 첫 번째 문자로 사용하지 마십시오.
대부분의 변수와 함수는 소문자로 시작합니다.
생성자는 대문자로 시작해야합니다. JS에서 새로 생략하면 오류 (컴파일 또는 실행 오류)를보고하지 않지만 생략하지 않는 것이 가장 좋습니다.
글로벌 변수는 모든 수도에서 명명되었습니다 (JS에는 매크로 및 상수의 개념이 없습니다).
8. 문장
간단한 진술
최대 한 줄 당 진술을하고 세미콜론을 사용합니다. 결국, 함수 리터럴과 객체 리터럴과 함께 할당 된 진술도 세미콜론을 사용해야합니다.
JS는 변수를 문으로 허용하지만 세미콜론을 삽입 할 때 약간의 오류가 발생할 수 있습니다. 따라서 표현식을 사용하는 일반적인 진술은 할당 또는 기능 호출 문입니다 (이 원래 영어 문장을 대략적으로 이해하지만 더 잘 번역하는 방법을 모르겠습니다).
복합 문장 ({} 사이에 포함 된 진술)
내부 진술은 4 개의 공간에 의해 들여 쓰기됩니다.
오프닝 브래킷 {시작 명세서 줄의 끝에 있어야합니다.
클로즈 브래킷은 끝에 별도의 선이어야하며 개구부 브래킷이있는 선의 첫 번째 문자와 정렬해야합니다.
명세서가 통제 명세서 (예 : if 등)에있을 때, 진술은 하나의 진술 만 있더라도 Curly Braces {}로 둘러싸여 있어야하며, 이는 진술을 추가 할 때 버그가 없음을 보장합니다.
9. 레이블 (이 부분에 대한 이해는별로 맞지 않습니다)
라벨을 사용하는 진술은 선택적이며 다음과 같은 것만 있습니다.
10. 반환 문
반환 된 값은 괄호로 둘러싸여 있어야하며 반환 표현식은 반환 키워드와 같은 줄에 있어야합니다 (세미콜론의 Newline 삽입을 피하십시오).
11. If 문
다음 형식을 따르십시오.
코드 사본은 다음과 같습니다.
if (조건) {
진술
}
if (조건) {
진술
} 또 다른 {
진술
}
if (조건) {
진술
} else if (조건) {
진술
} 또 다른 {
진술
}
12. 진술의 경우
다음 형식을 따르십시오.
코드 사본은 다음과 같습니다.
for (initiliazation; 조건; 업데이트) {
진술
}
for (객체의 변수) {
if (필터) {
진술
}
}
첫 번째 루프 형식은 반복 횟수를 결정할 수있는 배열 및 변수에 사용됩니다.
두 번째는 물체 횡단에 사용됩니다
참고 : 여기서는 객체 프로토 타입에 추가 된 특성이 열거 될 수 있으므로 필터링을 위해 HasownProperty 메소드를 사용해야하지만 Code로 테스트 할 때 표시되지 않았습니다. 문제가 어디에 있는지 모르겠습니다.
13. 성명서
다음 형식을 따르십시오.
코드 사본은 다음과 같습니다.
while (조건) {
진술
}
14. Do-While 진술
다음 형식을 따르십시오.
코드 사본은 다음과 같습니다.
하다 {
진술
} while (조건);
성명서 끝에 세미콜론을 추가하십시오.
15. 스위치 문
다음 형식을 따르십시오.
코드 사본은 다음과 같습니다.
스위치 (표현) {
사례 표현 :
진술
기본:
진술
}
과도한 압입을 피하기 위해 각 사례는 스위치와 정렬되어야합니다. 사례 태그 만 설명서가 아니며 들여 쓰기해서는 안됩니다.
각 사례 명령문 (기본값 제외)은 휴식 또는 반환 또는 던지기로 끝나야합니다.
16. 문을 시도하십시오
다음 형식을 따르십시오.
코드 사본은 다음과 같습니다.
노력하다 {
진술
} catch (변수) {
진술
}
노력하다 {
진술
} catch (변수) {
진술
} 마지막으로 {
진술
}
17. 계속 명세서
계속 진술을 사용하지 마십시오.
18. 성명서와 함께
with 문을 사용해서는 안됩니다.
19. 공간을 사용하십시오
코드 가독성을 향상시키기 위해 논리적으로 관련된 코드 세그먼트를 분할하도록 빈 줄을 설정하십시오.
다음과 같은 경우 공백을 설정합니다.
키워드에 이어 왼쪽 브래킷이 이어집니다 (예 : 공백을 사용합니다.
while (true) {
기능 매개 변수와 오프닝 브래킷 사이에 공간을 사용할 수 없습니다 (.
DOT (.), 왼쪽 브래킷 (() 및 사각형 브래킷 ([)을 제외한 이진 연산자는 공간을 사용하여 피연산자와 분리되어야합니다.
Typeof와 그 피연산자를 제외한 단독 연산자 사이에는 공간이 없어야합니다.
for 문은 block ()에서 각 세미콜론을 제어합니다. 그 뒤에 공간이 뒤 따릅니다.
각 쉼표에는 공간이 있어야합니다.
20. 추가 제안
[]그리고{}
멤버 이름이 연속 정수 인 경우 배열 사용 및 멤버 이름이 임의의 문자열 및 이름 인 경우 개체를 사용하십시오.
새 개체 () 및 [] 대신 새 배열 () 대신 {}를 사용하십시오.
쉼표, 운영자
쉼표, 연산자 사용을 피하십시오 (이 조항은 객체 리터럴, 배열 문자 정의, VAR 선언문 및 매개 변수 목록에 적용되지 않습니다)
블록 레벨 범위
명령문 블록을 사용하지 않는 준수 진술을 제외하고 JS는 블록 레벨 범위가없고 함수 스코프 만 있습니다.
과제 표현
조건부 판단 부분은 시간에 있어야하며 진술은 과제 진술의 사용을 피합니다.
=== 그리고! ==
합동 기호 (=== 및! ==)를 사용하여 평등을 결정하고 강제 유형 평등 변환 기호 (== 및! =)를 사용하지 마십시오.
숫자가 추가되면 (또는 -) 기호 (+ 또는 -)가있는 숫자 또는 (++ 또는 -)가있는 숫자가 있으면 기호 또는 (++ 또는 -)가있는 숫자를 동봉해야합니다.
Eval은 악마입니다 (Eval Abuse L)
Eval에는 동일한 상황이 있으며 기능 생성자를 사용해서는 안되며 문자열을 Settimeout 또는 SetInterval 함수로 전달해서는 안됩니다.
위의 20 가지 제안은 프로젝트에서 저에게 요약되어 있습니다. 자바 스크립트를 배우는 초보자에게는 도움이되지 않아야합니다. 그들은 모두 개인적인 경험입니다. 필연적으로 불완전한 측면이 있습니다. 당신이 그들을 찾으면 말 해주세요. 여기서 우리는 모든 사람의 진보로 이어질 것입니다.