에러가 발생할 가능성이 있다면 누군가는 그것에 맞닥뜨릴 것이다. 설계자는 모든 가능성을 미리 상정하며 에러를 막고, 발생 시 영향을 최소화하도록 설계해야만 한다. -도널드 A. 노먼 어떤 개발자들은 마치 어떤 에러도 발생하지 않을 것처럼 코드를 작성하는 경향이 있다.
자바스크립트에는 eval(str)이라는 함수가 있다. 이 함수는 문자열의 형태로 전달된 자바스크립트 코드를 실행시키는 일을 해준다. 예를 들어하지만 eval에는 중대한 문제가 있다... eval은 그 자체로 많은 위험성을 내포하고 있다. 우선 성능측면에서 문제점이
자바스크립트에 클래스(class)가 추가된지도 시간이 흘렀다. 이제 Js의 클래스는 일종의 문법적설탕(Syntatic sugar)이며, Js의 클래스는 사실 일종의 함수라는 것도 널리 알려졌다고 생각한다. 즉, 자바스크립트는 근본적으로 prototype기반의 언어라는
Node.js는 Chrome V8 JavaScript 엔진으로 빌드된 JavaScript 런타임입니다.공식 홈페이지에서는 위와 같이 Node.js를 소개하고 있다. 어떤것을 의미하는 말일까?런타임이란 특정 언어로 만든 프로그램을 실행할 수 있는 환경을 의미한다. 즉 위
자바스크립트에는 실행 컨텍스트라는 개념이 존재한다. 자바스크립트의 여러가지 동작방식을 이해하기 위해서 필요한 핵심 개념이므로 이 기회에 정리하도록 한다.ECMAScript는 실행 컨텍스트를 다음과 같이 정의하고 있다.실행 컨텍스트는 실행가능한 코드를 형상화하고 구분하는