Programing Language/JavaScript19 Express.js 시작 기초 1. package.json 생성 2. express.js 설치 3. Hello World! 출력 1. package.json 생성하기 원하는 폴더에 아래 코드를 실행시켜 package.json파일을 생성 npm init2. express.js 설치하기 npm install express 설치 후 package.json파일의 dependencies에 express추가된거 확인 3. Hello World! 출력하기index.js 파일을 생성 후 아래 코드 입력const express = require('express') const app = express()app.get('/', (req, res) => { res.send('Hello World!')})app.listen(5000).. 2025. 5. 10. Node.js와 Javascript 언어Node.js와 JavaScript는 문법 자체는 거의 동일. 둘 다 같은 ECMAScript표준을 따른다.( 대부분 같은 코드가 브라우저에서도, Node.js에서도 동작 ) js는 클라이언트 개발 , node.js는 backend개발같은 언어로 프론트/백엔드 둘다 개발 가능Express는 Node.js의 framework 엔진( 실행 환경 )Node.js는 chrome의 Javascript엔진인 V8이 Desktop App으로 추출된 것 Node.js는 브라우저가 아니라 서버 측에서 JavaScript를 실행할 수 있게 해주는 런타임 Node.js설치nvm( node version manager )을 이용한 Node.js설치 nvm또한 하나의 프로그램으로 설치가 필요nvm ls # nvm.. 2025. 5. 9. EventSource, sse통신 EventSource는 기본적으로 브라우저가 닫히거나 네트워크 연결이 끊길 때까지 계속 요청을 유지 페이지 이동 시 명시적으로 닫지 않으면 SSE 연결이 계속 유지될 수 있다. 브라우저의 SSE 자동 재연결 기능 EventSource는 네트워크 오류나 일시적인 연결 해제 시 자동으로 다시 연결하는 기능이 있습니다. chatList.html에서 sign.html로 이동하는 과정에서 SSE 연결이 끊겼다고 인식되어 다시 /sse/chatList 요청이 발생할 수 있다. EventSource, sse는 브라우저 단위인거 같은데? 페이지 단위가 아니라 2025. 3. 6. 브라우저 , Node.js 브라우저에서 Web API ~ Callback Queue ~ Event Loop 가 비동기처리를 가능하게 해줌 Node.js가 여러 작업을 블로킹 없이 수행할 수 있게 하는 핵심 요소는 libuv라이브러리 덕분이다.libuv는 C언어 기반의 비동기 I/O 라이브러리, 멀티스레드도 지원한다. https://velog.io/@hwasowl_/Node.js-%EC%9D%B4%EB%B2%A4%ED%8A%B8-%EB%A3%A8%ED%94%84 Node.js의 이벤트 루프와 libuv 이해하기평소 Node.js 환경에서 개발하면서, 문득 이벤트 루프에 대해 개념 정리가 하고싶어 글을 작성하게 되었다. 싱글 스레드? 멀티 스레드? Node.js 환경에서 개발을 해본 백엔드 개발자라면 이 개념들은.. 2025. 2. 26. Js 싱글스레드와 비동기처리 JavaScript는 싱글 스레드(Single Thread) 언어이기 때문에 한 번에 하나의 작업만 수행할 수 있다. 즉, 이전 작업이 완료되어야 다음 작업을 수행할 수 있게 된다. JavaScript로 여러 작업을 동시에 처리하기 위해 비동기(Asynchronous)라는 개념을 도입하여 , 특정 작업의 완료를 기다리지 않고 다른 작업을 동시에 수행할 수 있도록 하였다. 비동기는 메인 스레드가 작업을 다른 곳에 인가하여 처리되게 하고, 그 작업이 완료되면 콜백 함수를 받아 실행하는 방식으로, 쉽게 말해 작업을 백그라운드에 요청하여 처리되게 하여 멀티로 작업을 동시에 처리하는 것 https://ssocoit.tistory.com/269 [JS] 자바스크립트는 왜 멀티스레드가 아니라 싱글스레드로 동작하.. 2025. 2. 25. Js 호이스팅(Hoisting) 호이스팅(Hoisting) JavaScript코드가 실행되기 전에 변수와 함수 선언을 메모리에 먼저 등록하는 과정입니다. 즉, 코드 실행 전에 변수 선언과 함수 선언이 끌어올려지는 것처럼 보이는 현상 2025. 2. 25. 이전 1 2 3 4 다음