>> ES2015 이전에는 var로 변수를 선언

  -  ES2015부터는 const 와 let 이 대체

   - 가장 큰 차이점 : const 와 let은 블록 스코프(var는 함수 스코프)

if (true) {
  var x = 3;
}
console.log(x);

if (true) {
  const y = 3;
}
console.log(y);

 

실행하면 아래와 같은 에러가 발생

console.log(y);
            ^
ReferenceError: y is not defined

 

>> 기존 : 함수 스코프(function() {}이 스코프의 기준점)

 - 다른 언어와는 달리 if 나  for, while 은 영향을 미치지 못함

 - const 와 let 은 함수 및 블록 ({})에도 별도의 스코프를 가짐

 

const a = 3;
a = 5;

const b = { name: "hong" };
b.name = "Hong";

const 는 =(등호) 를 한 번만 사용할 수 있다고 이해하면 쉽다.

위와 같이 = 을 두 번 이상 사용하면 아래와 같이 에러가 발생한다.

a = 5;
  ^
TypeError: Assignment to constant variable.

하지만 b 와 같이 객체를 사용하고 객체 안에서 다른 것을 대입하는 것이 가능하다.

값의 변경이 필요하면 let을 사용하면 된다.

let c = 5;
c = 3;
c = 10;

 

 

'Javascript > Node' 카테고리의 다른 글

화살표함수 자바스크립트 arrow function  (0) 2024.11.01
템플릿 문자열 객체 리터럴  (0) 2024.10.31
Node.js 다운로드 설치 최신버전 22버전  (0) 2024.10.29
서버 노드  (0) 2024.10.28
노드의 특성  (0) 2024.10.27

>> 윈도우 기준  (아래 주소로 접속 )

  - https://nodejs.org 

 

Node.js — Run JavaScript Everywhere

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

nodejs.org

 

아래 Download Node.js (LTS) 클릭
 - LTS는 Long Term Support 를 줄인 말로 3년정도 안정적인 버전을 말하는 것이다. 

 

node-v22.11.0-x64.msi 이름으로 다운된 파일을 더블클릭 (버전에 따라 파일이름은 달라질 수 있음)

 

Next 클릭

 

accept 왼쪽에 체크하고 Next 클릭

 

Next 클릭

 

Next 클릭

 

Automatically 왼쪽 체크하고 Next 클릭
 - Automatically install 체크 안 했을 경우 나중에 후회하는 경우가 많으므로 꼭 설치하는 것을 추천

 

Install 클릭

 

설치 중에 중간에 팝업화면이 뜨면서 설치할 건지 물어보면 예(Yes) 누르시고 넘어 가시면 됩니다.

 

 

 

Finish 버튼 클릭

 

 

아무 키나 누르시면 됩니다. 위 화면과 같이 비슷한 화면 두번 정도 나올 수 있습니다.

 

중간에 팝업화면이 나올 수 있는데 허용할 건지 물어보고 누르시면 됩니다.

 

Enter 누르라는 화면 나올 수 있습니다. ENTER 누르시면 자동으로 종료 됩니다.
저와는 로그 내용이 다를 수 있지만 별다른 에러가 발생하지 않으면 정상입니다.

 

Node.js 가 정상적으로 설치 되면 아래와 같은 방법들로  확인이 가능합니다.

 

윈도우 버튼 누른 후에 node 로 검색 후 Node.js 앱 실행 

 

 

윈도우 버튼 누르고 cmd 검색해서 명령 프롬프트 실행

 

node 입력 후 엔터 누르면 Node.js 실행 되는 것 확인 (22.11 버전도 확인 가능)

'Javascript > Node' 카테고리의 다른 글

템플릿 문자열 객체 리터럴  (0) 2024.10.31
var const let 자바스크립트 변수 상수  (0) 2024.10.30
서버 노드  (0) 2024.10.28
노드의 특성  (0) 2024.10.27
노드의 정의  (0) 2024.10.26

서버로서의 노드

 >> 서버 : 네트워크를 통해 클라이언트에 정보나 서비스를 제공하는 컴퓨터 또는 프로그램

 >> 클라이언트 : 서버에 요청을 보내는 주체(브라우저, 데스크탑 프로그램, 모바일 앱, 다른 서버에 요청을 보내는 서버)

 >> 예시

   - 브라우저(클라이언트, 요청)가 길벗 웹사이트(서버, 응답)에 접속

   - 핸드폰(클라이언트)을 통해 앱스토어(서버)에서 앱 다운로드

 >> 노드 != 서버

 

 >> 노드서버의 장단점

장점 단점
멀티 스레드 방식에 비해 컴퓨터 자원을 적게 사용함 싱글 스레드라서 CPU 코어를 하나만 사용함
I/O 작업이 많은 서버로 적합 CPU 작업이 많은 서버로는 부적합
멀티 스레드 방식보다 쉬움 하나뿐인 스레드가 멈추지 않도록 관리해야 함
웹 서버가 내장되어 있음 서버 규모가 커졌을 때 서버를 관리하기 어려움
자바스크립트를 사용함 어중간한 성능
JSON 형식과 호환하기 쉬움  

 

 >> CPU 작업을 위해 AWS Lambda나 Google Cloud Functions 같은 별도 서비스 사용

 >> 페이팔 , 넷플리스, 나사 , 월마트, 링크드인, 우버 등에서 메인 또는 서브 서버로 사용

 

 

서버 외의 노드 

 >> 자바스크립트 런타임이기 때문에 용도가 서버에만 한정되지 않음

 >> 웹, 모바일, 데스크탑 애플리케이션에도 사용

  - 웹 프레임워크 : Angular, React, Vue, Meteor 등

  - 모바일 앱 프레임워크 : React Native

  - 데스크탑 개발 도구 : Electron(Atom, Slack, VSCode, Discord 등 제작)

 

 

 

'Javascript > Node' 카테고리의 다른 글

var const let 자바스크립트 변수 상수  (0) 2024.10.30
Node.js 다운로드 설치 최신버전 22버전  (0) 2024.10.29
노드의 특성  (0) 2024.10.27
노드의 정의  (0) 2024.10.26
노드 교과서 섹션0  (0) 2023.09.07

+ Recent posts