분류 전체보기(326)
-
캐싱 , require, 순환참조 [ node.js 교과서 ]
본 게시글은 node.js 교과서 강의를 듣고 정리한 글입니다. 캐싱 - 파일은 하드디스크에서 불러오는 것은 느리고 메모리에서 불러오는 것은 빠르다. - 하드디스크에 있는 정보를 메모리로 옮겨오는 것을 캐싱이라고 한다. require 의 특성 - require 가 제일 위에 위치할 필요는 없다. - require.cache 에 한번 require 한 모듈에 대한 캐슁 정보가 들어있다. - require.main 은 노드 실행시 첫 모듈을 가리킨다. // var.js const odd = "홀수입니다."; const even = "짝수입니다."; exports.odd = odd; exports.even = even; // require.js console.log("require가 가장 위에 오지 않아도 ..
2023.04.10 -
this [ node.js 교과서 ]
본 게시글은 node.js 교과서 강의를 듣고 정리한 글입니다. - 노드에서 this 를 사용할 때 주의점이 있다. - 최상위 스코프의 this 는 module.exports 를 가리킨다. - 그 외에는 브라우저의 자바스크립트와 동일하다. - 함수 선언문 내부의 this 는 global 객체를 가르킨다. //this.js console.log(this); console.log(this === module.exports); console.log(this === exports); function whatIsThis() { console.log("function", this === exports, this === global); } whatIsThis(); {} true true function false t..
2023.04.10 -
CommonJS 모듈 시스템 [ node.js 교과서 ]
본 게시글은 node.js 교과서 강의를 듣고 정리한 글입니다. - 브라우저에서는 사용 불가 - 노드는 자바스크립트 코드를 모듈로 만들 수 있다. - 모듈 : 특정한 기능을 하는 함수나 변수들의 집합 - 모듈로 만들면 여러 프로그램에서 재사용 가능 만들어보기 - 같은 폴더 내에 var.js, func.js, index.js 만들기 - 파일 끝에 module.exports 로 모듈로 만들 값을 지정 - 다른 파일에서 require(파일경로) 로 그 모듈의 내용을 가져올 수 있음 // var.js const odd = "홀수입니다."; const even = "짝수입니다."; module.exports = { odd, even, }; // func.js const { odd, even } = require(..
2023.04.10 -
node.js 를 알아보자 [ node.js 교과서 ]
본 게시글은 node.js 교과서 강의를 듣고 정리한 글입니다. - node.js 는 크롬 V8 자바스크립트 엔진으로 빌드된 자바스크립트 런타임이다. ( 런타임 : 포켓몬 골드버전 에뮬레이터 느낌? ) - 노드는 서버가 아니다. - 노드는 서버의 역할도 수행할 수 있는 자바스크립트 런타임 - 노드로 자바스크립트로 작성된 서버를 실행할 수 있다. - 서버 실행을 위해 필요한 http / https / http2 - 브라우저 종속성에서 벗어난 것 ( 브라우저 탈출 ) 특성 - 비동기, 싱글스레드, 이벤트 기반 이벤트 기반 - ex) 버튼을 클릭했을 때 팝업이 뜬다, 스크롤을 내리면 화면이 내려간다 ( 상호작용? ) - 이벤트 리스너에 콜백 함수 등록 > 이벤트 발생 > 등록된 콜백함수 호출 논 블로킹 I /..
2023.04.10 -
package.json [node.js 교과서]
본 게시글은 node.js 교과서 강의를 듣고 정리한 글입니다. - 프로젝트에 대한 기본 정보를 담고 있는 JSON 파일이다. - 모든 노드 애플리케이션에는 package.json 파일이 있다. - package.json 파일을 생성하려면 npm init 을 실행한다. npm init - 노드 패키지를 추가하기 전에 package.json 파일을 만들어야 한다. - 파일을 만들고 모든 기본값을 수락하려는 경우 npm init -y 가 있다. npm init -y
2023.04.10 -
npm [ node.js 교과서 ]
본 게시글은 node.js 교과서 강의를 듣고 정리한 글입니다. - 노드 패키지 매니저이다. - 타사 라이브러리의 레지스트리 외에도 모든 종류의 개발 도구 및 스크립트를 실행하기 위한 콘솔 도구이다. 링크 : https://www.npmjs.com/ npm Bring the best of open source to you, your team, and your company Relied upon by more than 17 million developers worldwide, npm is committed to making JavaScript development elegant, productive, and safe. The free npm Registry has become the center of Ja..
2023.04.10