자바스크립트에서 비동기식 프로그래밍을 하다보면 피치못하게 콜백헬에 부딪히는 경우가 발생한다.아래는 async1이 수행 후, async2, async3, async4가 차례로 수행되도록 (절차적으로 작동) 하는 비동기식 코드다.let async1 = (callback) => { callback();}let async2 = (callback) => { callback();}let async3 = (callback) => { callback();}let async4 = (callback) => { callback();} async1(() => { async2(() => { async3(() => { async4(() => { }) }) })})함수의 내용을 생략했기 때문에 뭐 이런거 가지고 문제가 되는가 하는..
오늘은 다양한 스크립트 엔진 중에서 자바로 만들어진 Rhino애서 TypedArray 사용하는 방법을 말하고자한다. ArrayBuffer는 ECMAScript6에서 TypedArray라는 이름으로 처음 등장했다.이는 바이너리 데이터를 처리하는 배열이라고 생각하면 편할 것이다. 근데 이게 Rhino에서는 ECMAScript6가 반영이 안된건지 뭔지는 모르게 TypedArray를 사용할 수 가 없다.TypedArray를 사용하면 undefine가 뜬다. 그럼 어떻게 사용해야 할까? rhino-1.7.7.1.1 버전 기준으로는 NativeTypedArray이라는 Package를 사용하여 ECMAScript6와 같이 TypedArray를 사용 가능하다.TypedArray를 사용할 js에 아래와 같이 추가하면 E..
ECMAScript6 부터 TypedArray 가 생겨 자바스크립트에서도 바이너리데이터를 손쉽게 다룰수 있게 됬다.아마 내생각엔 ECMAScript 5 (2011년) 까지만해도 바이너리 데이터를 자바스크립트에서 다룬다는 것은 아주 극히 드문일이였을 터인데V8엔진의 등장을 시작으로 node.js의 활성화, 서버사이드를 자바스크립트로 핸들링 가능하게 되면서 바이너리 데이터를 다루는 일이 빈번해지고 바이너리 데이터를 다룰 때 포퍼먼스를 향상시키기 위해 ECMAScript6때 등장한 듯 하다.사실 기존에도, 지금도 바이너리 데이터를 String으로 다루긴 해도 되긴하나, 속도적인 측면과 데이터 유지운영에 있어 전문적인 버퍼를 다룰수 있는 오브젝트가 필요하긴 했다. TypedArray의 기본적인 사용 방법은 Ar..
일반적 객체지향 언어에는 Class 라는 개념이 있는데, 자바스크립트에는 Class라는 개념이 아닌 프로토타입 이라는 것을 사용한다.ECMA6에 이르러 Class라는 키워드가 생기긴 했지만, 자바스크립트는 프로토타입언어이다. 참고로, 프로토타입을 공부 하면서 아 내가 머리가 좋지 않구나 라는 것을 뼈저리게 느끼게 되었다. 이 글은 이곳 저곳 구글링하다 여러 블로그를 참고하여 정리를 해 논 것이기 때문에 정확한 이해가 필요한 사람은 링크를 통해 이해바란다. http://www.nextree.co.kr/p7323/http://insanehong.kr/post/javascript-prototype/ 본론으로 들어가 프로토타입 이라는 것이 무엇인가?기존의 객체를 복사, 새로운 객체를 생성하는 방법이 프로토타입기..
c, c++기반으로 개발을 해오다 보니 자바스크립트로 코딩하고 보면 이게 c소스인지 자바스크립트 소스인지 구분이 잘 가지 않더라.기능적으로 정상 작동하니 그냥 넘어 갈 수 있겠으나, 이왕 자바스크립트를 만지게 된 김에 자바스크립트처럼 보이는 코딩을 하고싶어 졌다. 앞으로 내가 글을 쓰는 내용은 아래 블로그 내용을 내가 공부한 시점으로 재 해석하여 정리 요약하는 정도의 글이 될터이니참고만 하고 아래의 블로그에서 보다 깊은 깨닮음을 얻길 바란다.http://www.bsidesoft.com/?p=877 [js의 전략패턴 - 제어문을 객체구조화]function attack(weapon, opt){ switch(weapon){ case 'sword': if(opt){ }else{ } break; case 'bow..
- Total
- Today
- Yesterday
- Node.js
- JavaScript
- AES
- 암호화
- iOS10
- node js
- Visual Studio
- 윈도우 라이브러리
- ATS
- executable jar
- full stack
- build set
- ucrtbase.dll
- 대칭키
- cipher
- TLS1.2
- angular
- reactivex
- execute double click
- App Transport Security
- 전자서명
- Universal CRT
- MEAN stack
- remote debug
- HTTPS
- yss
- rxswift
- TypedArray
- PCX
- 비대칭키
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |