유용하면서도 시각적으로 멋지고, 성능적으로도 좋은 자바스크립트 사용 예 2011-11-28 01:52:16에 작성. 17,417번 읽힘.

자바스크립트에는 상당히 특이하고 유용한 문법들이 많이 있다.

보기 좋은 사용 예

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 2011-09-15 16:58:19에 작성. 52,822번 읽힘.

홈페이지에서 아이폰 모바일, 안드로이드 브라우저, 돌핀 브라우저 등에서 접근하는 모바일 사용자들을 위해 모바일 전용 홈페이지를 만들었다고 가정하자. 이들을 어떻게 그 페이지로 안내할 것인가? 직접 모바일 페이지 주소를 대문에 떡하니 걸어놀 것인가, 혹은 자동으로 이동시켜 줄 것인가? 대부분은 후자를 선택할 것이고 그게 더 사용자 입장에서 좋을 것이다.

예전에는 간단하게 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가 있는데 이 부분을 자신만의 모바일 페이지 주소로 변경한다.

이 포스트와 비슷한 포스트들