어떤 프로그램을 작성하든 코딩 스타일, 디자인 패턴 등의 개념을 접하게 됩니다. 코딩 스타일은 일반적으로 사양 작성에 중점을 두는 반면 디자인 패턴은 프로그램 아키텍처 설계에 중점을 두는 경향이 있습니다. 이 기사에서 저자가 편집한 "패턴"에는 JavaScript 코드를 작성할 때 일반적으로 사용되는 몇 가지 방법이나 팁이 포함되어 있어 JavaScript를 처음 접하는 학생들이 코드 품질을 빠르게 향상시키는 데 도움이 될 수 있습니다. 물론, 그 전에 먼저 표준화된 작성 습관을 확보해야 합니다. 게다가 이 글에서 소개한 지식 포인트를 코드 작성에 적용하면 코드 품질을 크게 향상시킬 수 있습니다.
다음은 작성자가 정리한 내용입니다. 논리적인 순서는 없습니다. 부족한 부분이 있으면 추가하고 수정해 주시기 바랍니다.
1. 변수 정의
2. 리터럴을 사용해 보세요.
3. 일반 리터럴
코드는 다음과 같습니다.
코드는 다음과 같습니다. 🎜>
코드는 다음과 같습니다.
// DOM 작업
el.style.display = 'none'; // 오프라인
// 작업
el.style.display = 'block'
// 문서 조각화를 사용하는 것이 더 좋습니다.
varfragment = document.createDocumentFragment(); // 더 좋습니다.
el.innerHTML = ''; // 모든 하위 요소를 빠르게 제거하지만 메모리가 누수될 수 있습니다.
el.innerHTML = ' xxx '; // 사용하세요!
// NodeList를 주의해서 다루세요
var Images = document.getElementsByTagName('img') // 조심하세요! . 이벤트 프록시
document.getElementById('list').onclick = function(evt){
var evt = evt window.event,
target = evt의 요소에 대한 이벤트를 수신합니다. .target || srcElement;
if(target.id === 'btn1'){
// 뭔가를 하세요
}
}
10. 네임스페이스
var MYAPP = {};
MYAPP.dom.get = function(id){};
MYAPP.style.css = function(el, style){}; 이벤트')
11. 체인 연산
코드 복사
return this; = new MYAPP.dom.Element('span ');
obj.setText('hello')
.setStyle('color', 'red')
.setStyle('font', 'Verdana ');
12. 비공개 범위
코드 복사
코드는 다음과 같습니다. >
})(jQuery)
13. 구성 개체
코드 복사
코드는 다음과 같습니다.
})
14. 유형 변환
코드 복사
코드는 다음과 같습니다.
15. 확장 프로토타입
코드 복사
코드는 다음과 같습니다.
// 상위 호환성이 필요한 경우에만 사용됩니다. 그 외의 경우에는 프로토타입 객체를 확장하지 않는 것이 좋습니다.
Array.prototype .forEach = function(){
// 상위 호환에만 해당 16. 루프 최적화
복사 code
코드는 다음과 같습니다.
// Cache
for(var i=0, j = document.getElementsByTagName('a').length ; i0; i--){
17. 새로운 스페셜을 사용해 보세요
코드 복사
코드는 다음과 같습니다. :
Array.forEach();
getElementsByClassName();
지연 로딩
코드 복사
코드는 다음과 같습니다.
// 한 번만 판단하고 함수를 다시 호출할 때는 판단이 필요하지 않습니다.
functionlazyDef(){
if(condition1){
lazyDef = function(){ }; >} else if(condition2){
lazyDef = function(){ };
}
returnlazyDef();
}
19. 메소드
var MYAPP = {}; >MYAPP.dom = (function(){
var _setStyle = function(el, prop, value){
console.log('setStyle');
};
return {
setStyle: _setStyle
};
})();
// MYAPP.dom.setStyle을 실수로 덮어쓰더라도 _setStyle은 내부적으로 계속 사용할 수 있습니다.
20. >
console.log('xx','xx','...');
console.dir(someObj)
console을 출력할 수 있습니다. dirxml(someDom);
console.time ('timer');
console.warn('xxx')
// 캡슐화는 실수로 인한 문제를 방지할 수 있지만 문제가 발생할 수 있습니다. 오류 보고 시 줄 번호 포함
function msg( msg){
if(console && console.log){
console.log(msg) // 잘못된 줄 번호
}
}
기본적으로 현재 떠오르는 것은 이것뿐입니다. 모두가 토론에 추가하는 것을 환영합니다 :)