- 비동기 이벤트 기반 자바스크립트 런타임
- 공식문서 : https://nodejs.org/en/about/
- 모듈 공식문서 : https://nodejs.org/dist/latest-v14.x/docs/api/
- 기존에는 브라우저에서 다른 파일을 불러올 때 이런 방식으로 불러왔다.
<script src = "불러오고싶은_스크립트.js"></script>
- 그러나 Node.js에서는 Javascript 코드 가장 상단에
reqire구문을 이용하여 다른 파일을 불러온다.const fs = require('fs') // 파일 시스템 모듈 불러옴 const dns = require('dns') //DNS 모듈을 불러옴
- 써드파티모듈(3rd-party-module)은 해당 프로그래밍 언어에서 공식적으로 제공하는 빌트인 모듈이 아닌 모든 외부 모듈을 일컫는다. 예를 들어, Node.js의
underscore는 공식문서에 없는 모듈이기 때문에 써드파티 모듈이다.
이를 사용하는 방법은 다음과 같다.npm install underscore이제는
require구문을 통해underscore를 사용할 수 있다.const_ = require('underscore')
fs.readFile(path,[,options],callback)
- 메소드
fs.readFile은 비동기적으로 파일 내용 전체를 읽는다. 이 메소드를 실행할 때는 인자 세 개를 넘길 수 있다.
*
path에는 파일 이름을 인자로 넘길 수 있다.
일반적으로 문자열 타입으로 넘긴다.fs.readFile('/etc/passwd', ..., ...)
- 대괄호로 감싼 두번 째 인자
options는 넣을 수도 있고, 넣지 않을 수도 있다.let options = { encoding : 'utf8', flag:'r' } fs.readFile('/etc/passwd',options, ...)callback
- 두가지 parameter가 존재한다.
- 에러가 발생하지 않으면 err은 null이 되고, data에 문자열 or Buffer가 전달된다.
fs.readFile('test.txt','utf8',(err,data)=>{ if(err){ throw err; } console.log(data) })