본문 바로가기

자바스크립트

(6)
[JavaScript] 브라우저 크기 구하기 : 화면 해상도 구하기 기기에 브라우저 장치가 되는데 디스플레이 크기를 구해야 되었다.처음에는 이미지를 표시해서 몇 픽셀인지 구하려다가 자바스크립트에 화면 크기를 구하는 방법이 있다는 것이 생각났다. 참고: http://stackoverflow.com/questions/2474009/browser-size-width-and-heightvar size = { width: window.innerWidth || document.body.clientWidth, height: window.innerHeight || document.body.clientHeight } 이것을 바탕으로 HTML을 만들어보았다. 전체화면 모드일 경우에는 모니터 해상도를 구할 수 있다. 1) HTML HTML에 가로, 세로를 표시할 span 엘리먼트를 추가했다..
[JavaScript] 시각화(visualization) 라이브러리(그래픽, 차트 등) 요즘 데이터 시각화에 관해 관심이 많다.웹 쪽에서는 자바 스크립트를 가지고 차트를 그리는 라이브러리가 많이 있는 것으로 알고 있다. 이름 사이트 라이센스 특징 1 Highcharts JS http://www.highcharts.com/ 비상용전제 하에 Free (링크) 다양,고품질,다양한레퍼런스, 상용 2 Flotr http://www.flotcharts.org/ MIT License (링크) 3 Flotr2 http://humblesoftware.com/flotr2/ MIT License (링크) 4 gRaphaël http://g.raphaeljs.com/ MIT License (링크) SVG 5 Protovis http://mbostock.github.io/protovis/ BSD License d..
[JavaScript] 부동소수점의 오류 예 컴퓨터의 부동소수점의 정밀도 문제는 오래전 부터 알려진 사실이다. 자바스크립트에서도 그 예를 쉽게 찾을 수 있는데, 기록을 해놓지 않으면 예를 들 때 바로 생각해 내지 못하는 경우가 있어서 기록을 해둔다. 예)> 0.1 + 0.2;0.30000000000000004 이런 것은 결합법칙에서 문제가 된다. (A + B ) + C = A + (B + C)> (0.1 + 0.2) + 0.3;0.6000000000000001> 0.1 + (0.2 + 0.3);0.6> 돈과 관련된 경우에는 정밀도는 민감한 사항이기 때문에 실수가 아닌 정수형으로 계산을 하라고 한다.최소 단위를 일의 단위로 이용을 한다면 문제가 없다.> (1 + 2) + 3;6> 1 + (2 + 3);6> ((1 + 2) + 3)/10;0.6> (1..
[책] 읽기 좋은 자바스크립트 코딩 기법 Maintainable JavaScript - 한빛미디어 동물 표지로 패턴을 가지고 있는 오라일리의 책이다.책 표지는 그리스 거북이다. 사게 된 이유는 최근 Node.js 개발을 하면서 자바스크립트 코드를 다룰 일이 많아 졌기 때문이다.서점에서 훝어보고 괜찮은 자바스크립트 책이라는 생각이 들어 구입하게 되었다.(자바스크립트 분야 책만 3권을 동시에 주문을 하였다.) 회사 내에서 코딩 스타일 가이드를 수립해서 팀원 들에게 교육을 하라고 얼마전에 팀장이 이야기를 해서 마침 유용하게 읽었다. 자바스크립트는 C/C++ 뿐만 아니라 자바, C#과 비슷한 문법 및 키워드를 가지고 있어서 공통적인 부분에는 적용할 수 있지 않을까 생각이 된다. 비교 연산자에 대해 평소에 헷갈렸는데 이 참에 확실히 이해를 해서 좋았다. [읽기기록]9/14 ~p.209/15 ~p.549/16 ..
[JavaScript] null 값과 비교할 때는 반드시 비교 연산자로 === 또는 !==를 사용 Maintainable JavaScriptp.129 null 비교 금지null 값과 비교할 때는 반드시 비교 연산자로 === 또는 !==를 사용해야 한다. 실제 잘못 사용 예) 문자열이 IP 패턴을 하고 있는지 확인하는 함수function isIPAddress(ip) { var ipFormat = /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/; return (ip.match(ipFormat)!=null);} 수정 예function isIPAddress(ip) { ..
[JavaScript] RIA::자바스크립트 프레임워크 자바스크립트 테스트 캔버스 : http://jsbin.com/ jQuery를 공부하던중에 몇 가지 정리를 해본다. jQuery 공식사이트(1.8.2): http://jquery.com/ jQuery UI(1.9.0) : http://jqueryui.com/ - jQuery Online Movie Tutorial by John Resig - eclipse plug-in : Aptana Studio 3 - http://download.aptana.com/studio3/plugin/install => http://j07051.tistory.com/entry/Eclipse-Jquery-플러그인-설치 => jQuery, 기본 셀렉터 (TAEYO.NET) jQuery 플러그인들 차트관련: jQuery Plugins..