Node.js

노드 내장 알아보기 #1

쿠와와 2020. 12. 3. 18:54

 

너무 많아서 그냥 이런게 있구나 하고 넘어가면 됨

global

 

노드의 전역 객체

브라우저의 window같은 역할 => global, global this

모든 파일에서 접근 가능

window처럼 생략도 가능(console, requireglobal의 속성)

 

global 속성에 값을 대입하면 다른 파일에서도 사용 가능

-> 파일이 많아지면 어디서 썼는지 모르기 때문에 별로 좋지 않음

 

 

console

 

브라우저의 console 객체와 매우 유사

 

console.time, console.timeEnd: 시간 로깅 ( 두 개 사이의 코드 실행 시간을 알아볼 수 있다. )

console.error: 에러 로깅

console.log: 평범한 로그

console.dir: 객체 로깅

console.trace: 호출스택 로깅 ( 함수 안에서 호출스택을 보여줌 )

console.table: 결과를 테이블로 보여줌 

 

 

타이머 메서드

 

set 메서드에 clear 메서드가 대응됨

set 메서드의 리턴 값(아이디)clear 메서드에 넣어 취소

 

setTimeout(콜백 함수, 밀리초): 주어진 밀리초(1000분의 1) 이후에 콜백 함수를 실행합니다.

setInterval(콜백 함수, 밀리초): 주어진 밀리초마다 콜백 함수를 반복 실행합니다. (실시간 데이터 출력에 좋음)

setImmediate(콜백 함수): 콜백 함수를 즉시 실행합니다setTimeout(() => something, 0 )이랑 동일 

( 백드라운드에 보내서 특점 함수들을 동시에 실행시킬 수 있게함 / 비동기 )

 

clearTimeout(아이디): setTimeout을 취소합니다.

clearInterval(아이디): setInterval을 취소합니다.

clearImmediate(아이디): setImmediate를 취소합니다.

 

 

__filename, __dirname

 

__filename: 현재 파일 경로

__dirname: 현재 폴더(디렉터리) 경로

파일 시스템에 접근 할 수 있어서 주의해야한다.

 

 

module, exports

 

module.exports 외에도 exports로 모듈을 만들 수 있음

  모듈 예제의 var.js를 다음과 같이 바꾼 후 실행

  동일하게 동작함

  동일한 이유는 module.exportsexports가 참조 관계이기 때문

  exports에 객체의 속성이 아닌 다른 값을 대입하면 참조 관계가 깨짐

module.exports = {
	odd = odd,
    even = even,
}
// 동일
exports.odd = odd;
exports.even = even;
// 둘 중에 하나만 써야함 그렇지 않으면 error

 

this 

노드에서 this를 사용할 때 주의점이 있음

  최상위 스코프의 this는 module.exports를 가리킴

  그 외에는 브라우저의 자바스크립트와 동일

  함수 선언문 내부의 thisglobal(전역) 객체를 가리킴

 

 

 

'Node.js' 카테고리의 다른 글

OS, path, url 모듈  (0) 2020.12.07
노드 내장 알아보기 #2  (0) 2020.12.04
REPL와 모듈  (0) 2020.12.02
자바스크립트 정리  (0) 2020.12.01
JavaScript 실행과 문법  (0) 2020.11.29