Node.js에서 사용되는 자바스크립트 구문은 일반적인 브라우저 환경에서 사용되는 자바스크립트와 기본적으로 동일하다.
Node.js는 Chrome V8 JavaScript 엔진을 사용하며, 일반적인 자바스크립트 문법과 ECMAScript 표준을 따르지만 몇 가지 중요한 차이점이 있다.
/ 환경 객체 (Global Object)
브라우저 환경에서는 window 객체가 전역 객체로 사용되지만, Node.js 환경에서는 global 객체가 전역 객체로 사용된다.
예를 들어, 브라우저에서는 window.setTimeout()을 사용할 수 있지만, Node.js에서는 global.setTimeout()을 사용한다.
/ 모듈 시스템
Node.js는 CommonJS를 사용하는 모듈 시스템을 지원하여 파일 간의 코드를 모듈화하고 필요한 부분만 가져와 사용할 수 있다. 이때, require 함수를 사용하여 모듈을 불러오며, module.exports를 사용하여 모듈을 내보낸다.
// 모듈 불러오기
const myModule = require('./myModule');
// 모듈 내보내기
module.exports = { someFunction };
/ 노드 패키지 매니저 (NPM)
Node.js는 NPM(Node Package Manager)을 사용하여 패키지를 관리한다. NPM을 통해 다양한 라이브러리와 도구를 설치하고 프로젝트에 추가할 수 있다.
/ 비동기 코드 처리
Node.js는 비동기 이벤트 기반의 구조를 가지고 있어, 비동기 코드를 쉽게 작성할 수 있다. 이를 위해 콜백 함수, Promise, 그리고 async/await를 활용한다.
/ 웹 브라우저 관련 API 부재
브라우저에서 사용 가능한 일부 웹 브라우저 관련 API는 Node.js에서는 사용할 수 없다. 예를 들어, DOM 조작 관련 API는 브라우저에서만 사용 가능하다.
이러한 차이점을 제외하면, Node.js에서 사용되는 자바스크립트는 일반적인 자바스크립트와 큰 차이가 없다. Node.js는 서버 사이드 자바스크립트 개발을 위해 만들어졌으며, 브라우저 밖에서도 자바스크립트를 실행할 수 있도록 해주는 환경이다.
'STUDY > NodeJS' 카테고리의 다른 글
[1-1] dotenv로 환경변수 관리하기 (0) | 2024.03.29 |
---|---|
JWT 토큰 저장 방법들 - Cookies, HTTP인증헤더, 로컬스토리지, 세션스토리지 (0) | 2024.03.28 |
[인증/권한] 클라이언트와 서버 간의 인증 JWT(JSON Web Token) (0) | 2024.03.28 |
비밀번호 해싱 처리를 위한 Mongoose 미들웨어 설정 (0) | 2024.03.27 |
npm install으로 패키지 설치시에 사용되는 옵션들 (0) | 2024.01.10 |