태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

낭만곰팅의 미투데이 - 2009년 12월 10일

2009/12/11 04:30

이 글은 낭만곰팅님의 2009년 12월 10일의 미투데이 내용입니다.

낭만곰팅 미투데이 crome, extenstion, Google, JavaScript, speed-tracer, 도흥석이름을, , 될까, 보게, 분당에, 사는, 아이폰에서, 얼마나, 확률이, 흘낏

낭만곰팅의 미투데이 - 2009년 9월 9일

2009/09/10 04:30
  • 날씨가 선선해서 간만에 자전거 타고 출근..(몇일이나 더 탈 수 있을려나)2009-09-09 10:11:28
  • “진척을 이룰수 없는 일을 계속 생각하는 것은 시간과 에너지 낭비일 뿐이다. 그리고 하지 못하고 있는 일에 대해서 근심만 부추길 뿐이다.”(me2book Getting Things Done me2book 끝도 없는 일 깔끔하게 해치우기)2009-09-09 10:19:01
    끝도 없는 일 깔끔하게 해치우기
    끝도 없는 일 깔끔하게 해치우기
  • Nicholas C. Zakas의 BayJax 발표 Slide, Scalable JavaScript Application Architecture(uploader scalable javascript application architecture nicholas bayjax)2009-09-09 14:15:16

이 글은 낭만곰팅님의 2009년 9월 9일의 미투데이 내용입니다.

낭만곰팅 미투데이 Application, architecture, bayjax, done, getting, JavaScript, me2book, nicholas, scalable, things, uploader, 깔끔하게, 끝도, , 몇일이나, , 없는, , 있을려나, , 해치우기

낭만곰팅의 미투데이 - 2009년 6월 26일

2009/06/27 04:30

이 글은 낭만곰팅님의 2009년 6월 26일의 미투데이 내용입니다.

낭만곰팅 미투데이 good, JavaScript, me2book, parts, The, twi2me

Javascript parseInt() function

2007/08/05 17:14
알다시피 자바스크립트에서 문자열로된 숫자를 정수로 바꿀 때 흔히 쓰는 자바스크립트의 전역함수(Global Function)이다.
근데 이게 좀 특이하게 동작하는 구석이 있다.
0으로 시작하는 문자열을 경우(0x 또는 0X로 시작하하지 않고) 브라우져는 8진수(IE,FF)또는 10진수(Opera)로 해석한다.

parseInt함수의 syntax는 다음과 같다.
parseInt(string[, radix])
  • string: 정수로 바꿀 대상 문자열
  • radix: 문자열을 바꿀때 사용할 기수(基數, base), 2이상 36이하인 정수 - optional
  • returns: 문자열을 parsing한 정수값(10진수) 또는  NaN
MDC Javascript 레퍼런스를 보면 radix가 0 이거나 생략되었을때 '0'으로 시작되는 문자열의 경우에 radix를 8이라고 되어있다.

If the radix is not specified or is specified as 0, JavaScript assumes the following:

  • If the input string begins with "0x", the radix is 16 (hexadecimal).
  • If the input string begins with "0", the radix is eight (octal). This feature is deprecated.
  • If the input string begins with any other value, the radix is 10 (decimal).
그런데 ECMAScript 스펙을 보면 얘기가 좀 다르다.
radix가 없고 0으로 시작하는 문자열(but  not 0x or 0X)을 8진수 또는 10진수로 구현하는것을 허용한다고 되어있다.
이렇다 보니 IE나 Firefox8진수로 반환을 하고 Opera의 경우에는 10진수로 반환을 한다.
사용자 삽입 이미지

이왕이면 그냥 10진수 하나로 정했으면 좋았을 것을..
스펙의 마지막 부분에 10진수로 반환하는것을 권장한다는 말이 있음에도 불구하고 브라우져들은 서로 다른 구현을 채택한듯 하다.
NOTE
parseInt may interpret only a leading portion of the string as an integer value; it ignores any
characters that cannot be interpreted as part of the notation of an integer, and no indication is given
that any such characters were ignored.
When radix is 0 or undefined and the string's number begins with a 0 digit not followed by an x or X,
then the implementation may, at its discretion, interpret the number either as being octal or as being
decimal. Implementations are encouraged to interpret numbers in this case as being decimal.

- ECMA-262 에서 발췌

사실 이것 때문에 07-08-07 이런거 파싱해서 달력을 만들어야 하는데 자꾸 다른 값이 나와서, widget만들면서 삽질좀 했다.
가능하면 parsetInt함수를 사용할 때에는 radix를 가능하면 명시하는 습관을 들이는 것이 좋을 듯하다.

더 자세한 내용은 아래 내용을 참조하자.

낭만곰팅 프로그램 이야기 JavaScript

DOM Scripting 한국어판 출간

2007/07/15 10:26
또 하나의 웹표준 서적인 제레미 키스(Jeremy Keith)의 "DOM Scripting:Web Design with JavaScript and the Document Object Model"이 한국어판-『DOM 스크립트: 다이내믹한 웹 표준 사이트를 위한』-이 드디어 에이콘출판사에서 출간되었다.

원서는 2005년에 출간 되었으면, 내가 처음 이책을 접한게 2005년말 2006년 초쯤으로 기억하는데 꽤나 늦게 나온것 같긴하다.

차니님이 거의 2년 넘게 공들여서 번역하셨다고 하니 한국어판을 아직 보진 못했지만 그 수고와 열정을 가늠할 수 있을것 같다.

개인적으로 이책은 사람들이 자바스크립트 관련 책을 추천해달라고 할때 주저 없이 추천하는 책중에 하나이다.
어렵지 않은 설명으로 쉽게 읽어나갈 수 있으며 웹표준에서 얘기하는 구조(Structure), 표현(Presentation), 행동(Behavior)의 구분되어야 한다는 원칙을 가장 쉽고 명확한 예제들로 보여주고 있다.

덤으로 차니님의 "웹 표준 기반의 멋진 DOM 스크립트 예제"와 강규영님이 쓰신 "다이내믹한 웹사이트를 위한 고려사항: 웹사이트 사용성 문제 해결과 긴밀한 협업 방안"이 한국어판 특별 부록 들어있다고 하니 더욱 기대가 된다.

제레미 키스에 대해서 좀더 얘기하자면 Web Standards Project의 member이자 DOM Scripting Task Force의 공동 리더로 활동하고 있다. 정말 부러운 것은 "CSS Mastery"의 저자인 Andy Budd, "Web Accessibility: Web Standards and Regulatory Compliance"의 공동저자인 Richard Rutter와 함께 clear:left 에서 컨설턴트로 활동중이다.

'웹 표준' 카테고리의 다른 글

DOM Scripting 한국어판 출간  (2) 2007/07/15
CSS 마스터 전략  (2) 2006/12/18

낭만곰팅 웹 표준 Book, JavaScript, 에이콘출판사

  1. Blog Icon

    훗, 이것도 공짜로 ?? ;;;

  2. 공짜라니요? 무슨 말씀인지?

me2day - 2007년 3월 26일

2007/03/27 08:21

낭만곰팅 미투데이 JavaScript, me2day

Evaluating Local Variables

2006/12/29 07:30

Evaluating Local Variables

지역변수를 가장 명확한 scope로부터 그렇지 않은 방향으로 해석하는 scope chain에 근거하여 찾을 필요가 있다.
때로는 이런 symbolic look-up들은 여러 레벨을 통할수도 있다. 그리고 결국은 아주 고비용(성능에 대해서)이 되는 IE DOM에 대한 일반적인 쿼리로 끝난다.
가장 나쁜 시나리오는 변수가 아직 존재하지 않고 모든 scope chain을 조사하고, 단지 생성되는데 필요한 expando 변수만 찾을 뿐인 경우이다.

   function getLocalVariable() {
       localVariable = getValueFromDOM();
       return (localVariable +1);
   }

위의 샘플은 잘못 작성된 함수 이다. 여기서 localVariable을 function scope내에 선언 할려고 했지만 var 선언을 하지 않고 진행함으로써 결국 모든 scope에서 찾을 것이다.
만일 변수를 찾지 못한다면 새로은 global이 생성되고, 찾게 된다면 이미 존재하는 global이 사용 될 것이다.

이 새로운 변수는 이제 다른 함수에서도 접근가능하고 때로는 코드에서 이상한 현상을 발생시킬 수도 있다.


출처 : http://blogs.msdn.com/ie/archive/2006/08/28/728654.aspx

'프로그램 이야기' 카테고리의 다른 글

ubuntu에서 Ruby+Rails+Mongrel 설치  (0) 2007/01/30
2회 루비 세미나 참가 후기  (4) 2007/01/24
Evaluating Local Variables  (2) 2006/12/29
ROME - Rss and atOM utilitiEs  (0) 2006/12/27
FireBug 1.0 beta(b1) Rlease  (4) 2006/12/20
Java SE 6 릴리즈  (0) 2006/12/12

낭만곰팅 프로그램 이야기 IEBlog, JavaScript

  1. 2007년에도...

    새해 복 많이 받으세요~ ^^

  2. 제가 먼저 인사 드렸어야 하는데...
    새해 복 많이 받으세요~~