250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- OSI7계층
- 트랜잭션
- async/await
- Django
- 장고초기세팅
- rebase
- manytomanyfield
- pm2
- 프로미스
- 자바스크립트
- 스코프
- 호이스팅
- 노드
- on_delete
- typescript
- bcrypt
- status code
- nodeJS
- django westagram
- TypeError: this.boardRepository.createBoard is not a function
- JWT
- CORS
- Jest
- node
- 실행 컨텍스트
- westagram
- javascript
- wecode
- crud2
- docker
Archives
- Today
- Total
될때까지
노드 내장 객체 알아보기(global, console, timer, __filename, __dirname, this, require) 본문
학습/Node.js
노드 내장 객체 알아보기(global, console, timer, __filename, __dirname, this, require)
랖니 2022. 8. 21. 15:53728x90
1. global
- 노드의 전역 객체
- 브라우저의 window같은 역할
- 모든 파일에서 접근이 가능하다
- window처럼 생략도 가능하다(console, require도 global의 속성이다)
- global속성에 값을 대입하면 다른 파일에서도 사용이 가능하다.
2. console 객체
- 브라우저의 console객체와 매우 유사하다.
- console.time() ~ console.timeEnd() : 시간 로깅(코드 수행시간을 찍어준다)
- console.error() : 에러 로깅
- console.log() : 평범한 로그
- console.dir() : 객체 로깅
- console.trace() : 호출 스택 로깅
3. 타이머 메서드
- set메서드에 clear메서드가 대응됨(취소하려면 변수에 저장을 해야한다!!)
- set메서드의 리턴값을 clear메소드에 넣어 취소
- setTimeout(콜백함수, 밀리초) : 주어진 밀리초이후에 콜백함수를 실행한다.
- setInterval(콜백함수, 밀리초) : 주어진 밀리초마다 콜백함수를 반복 실행한다.
- setImmediate(콜백함수) : 콜백함수를 즉시 실행한다.
--> setTimeout / setInterval / setImmediate 은 백그라운드로 실행을 넘겨 동시실행시킬 수 있는 비동기 코드다.
- clearTimeout(아이디) : setTimeout을 취소한다.
- clearInterval(아이디) : setInterval을 취소한다.
- clearImmediate(아이디) : setImmediate를 취소한다.
const interval = setInterval(() => {
console.log('1초마다 실행');
}, 1000);
setTimeout(() => {
clearInterval(interval);
}, 2500);
4. __filename, __dirname
- __filename : 현재 파일 경로
- __dirname : 현재폴더(디렉토리)경로
5. this
- 최상위 스코프의 this는 module.exports를 가리킨다.
- 함수 선언문 내부의 this는 global 객체를 가리킨다.
console.log(this); // {} 반환
console.log(this === module.exports); // true
function whatIsThis() {
console.log('function', this === exports, this === global); // function false true
}
whatIsThis();
6. require
- 다른 파일을 실행만 하고 싶다, 변수로 저장해 사용하고 싶지 않을때는 require만 하면 된다.
- 하드디스크에서 읽어서 메모리에 저장해두는 걸 캐싱이라고 한다. 하드디스크는 멀고 메모리는 가까워서 빠르다.
- require가 제일 맨 위에 올 필요는 없고 require.cache에 한번 require한 모듈에 대한 캐싱 정보가 들어있다.
728x90
'학습 > Node.js' 카테고리의 다른 글
os와 path (0) | 2022.08.21 |
---|---|
process (0) | 2022.08.21 |
모듈 만들기 (0) | 2022.08.21 |
REPL 사용하기, JS파일 실행하기 (0) | 2022.08.21 |
Promise, async/await (0) | 2022.08.21 |