유용하면서도 시각적으로 멋지고, 성능적으로도 좋은 자바스크립트 사용 예 While이 에 작성. 1,284번 읽힘.
자바스크립트에는 상당히 특이하고 유용한 문법들이 많이 있다.
보기 좋은 사용 예
3항 연산과 조건부 할당
var value; // 방법 1 if (n) value = n; else value = 1; // 방법 2 var value = n ? n : 1; // 방법 3 var value = n || 1;
조건부 함수 호출
// 방법1 if (callback) { callback(); } // 방법2 callback && callback();
속도가 빠른 예
산술(+)연산보다 배열 작성 후 결합
var result = 'a' + 'b' + 'c' + 'd'; var result = ['a', 'b', 'c', 'd'].join('');
배열의 크기에 따라 for 문을 돌릴 때
첫째의 예처럼 돌리면 매번 nodes.length 를 구해오게 된다.
// Instead of this... function nodeJam(){ nodes = document.getElementsByTagName('P'); for (var i = 0; i < nodes.length; i++) { nodes[i].innerHTML += 'test'; } } // This is much faster function nodeJam(){ nodes = document.getElementsByTagName('P'); for (var i = 0, len = nodes.length; i < len; i++) { nodes[i].innerHTML += 'test'; } }
섹시한 자바스크립트 코딩 컨벤션 (Firejune)의 일부를 발췌.
모바일 브라우저 감지 스크립트 | Detect Mobile Browsers While이 에 작성. 4,581번 읽힘.
홈페이지에서 아이폰 모바일, 안드로이드 브라우저, 돌핀 브라우저 등에서 접근하는 모바일 사용자들을 위해 모바일 전용 홈페이지를 만들었다고 가정하자. 이들을 어떻게 그 페이지로 안내할 것인가? 직접 모바일 페이지 주소를 대문에 떡하니 걸어놀 것인가, 혹은 자동으로 이동시켜 줄 것인가? 대부분은 후자를 선택할 것이고 그게 더 사용자 입장에서 좋을 것이다.
예전에는 간단하게 iPhone 과 Android 만 유저 에이전트에서 감지하여 이동시켜주곤 했다. 하지만 지금은 수없이 많은 모바일 브라우저가 있다. 그 모두 일일이 내가 찾아서 추가해 줄 수는 없는 노릇이다. Detect Mobile Browsers – Open source mobile phone detection은 현존하는 거의 모든 모바일 브라우저를 감지할 수 있는 함수를 제공해준다. 이 함수는 계속적으로 업데이트 해주며 Apache(rewrite), ASP, ASP.NET, ColdFusion, C#, IIS, JSP, JavaScript, jQuery, nginx, node.js, PHP, Perl, Python, Rails 까지 상당히 많은 웹언어를 지원해주고 있다.
사용 방법
Detect Mobile Browsers – Open source mobile phone detection에 접속하여 원하는 언어를 클릭하여 스크립트를 다운받는다. 그리고 파일을 열어보면 http://detectmobilebrowser.com/mobile가 있는데 이 부분을 자신만의 모바일 페이지 주소로 변경한다.