1. OS
- os 정보를 가져올 수 있다.
os.arch() : 아키텍처
os.platform() : 운영체제
os.type() : 운영체제의 종류
os.uptime() : 부팅 이후 흐른 시간
os.hostname() : 컴퓨터 이름
os.release() : 운영체제 버전
os.homedir() : 홈 디렉토리
os.tmpdir() : 임시 파일 경로
os.cpus() : 코어 수
os.freemem() : 사용 가능한 메모리
os.totalmem() : 전체 메모리
2. path
- 폴더와 파일의 경로를 쉽게 조작하도록 도와준다.
- 가장 중요한건 운영체제 별로 경로 구분자가 다르기 때문이다.(윈도우 \, 리눅스 /)
path.sep : 경로 구분자 확인
path.delimiter : 환경 변수 구분자 확인 (; or :)
path.dirname(경로) : 파일이 위치한 경로
path.extname(경로) : 파일의 확장자
path.basename(경로, 확장자) : 파일의 이름, 확장자 표시
path.parse(경로) : 파일 경로를 분리함
path.fotmat(객체) : parse한 걸 다시 합친다
path.normalize(경로) : 정상적인 경로를 반환
path.isAbsolute(경로) : 파일의 경로가 절대경로인지 상대경로인지 true, false로 반환
path.relative(기준경로, 비교경로) : 기준 경로에서 비교 경로가 가는 법을 알려준다
path.join(경로) : 여러 인수를 넣으면 하나의 경로로 합친다
path.resolve(경로) : join과 비슷하다
3. url
- WHATWG의 방식을 사용한다. (주소 체계 : protocol / user / password / host / pathname / search / hash)
const url = require('url');
const { URL } = url;
const myURL = new URL('http://www.ioi.co.kr/boo/boo.aspx?sercate1=00#anchor');
console.log('new URL():', myURL);
console.log('url.format():', url.format(myURL));
console.log('------------------------------');
const parsedUrl = url.parse('http://www.ioi.co.kr/boo/boo.aspx?sercate1=00#anchor');
console.log('url.parse():', parsedUrl);
console.log('url.format():', url.format(parsedUrl));
url.parse(주소) : 주소를 분해한다
url.format(객체) : 분해된 주소를 조립한다
search부분에 searchParams라는 객체로 반환하게 되는데, 주소를 통해 키=값으로 데이터를 전달하는데 사용하고
"?"로 시작한다 여러개가 있을 경우, &로 구분을 짓는다.
const { URL } = require('url');
const myURL = new URL('http://www.ioi.co.kr/?page=3&limit=10&category=nodejs&category=javascript');
console.log('searchParams:', myURL.searchParams);
// getAll() : 키에 해당하는 모든 값을 가져옵니다.
console.log('searchParams.getAll():', myURL.searchParams.getAll('category'));
// get() : 키에 해당하는 첫번째 값만 가져옵니다.
console.log('searchParams.get():', myURL.searchParams.get('limit'));
// has() : 해당 키가 있는지 확인합니다.
console.log('searchParams.has():', myURL.searchParams.has('page'));
// keys() : 모든 키를 반복기(Es2015문법)객체로 가져옵니다.
console.log('searchParams.keys():', myURL.searchParams.keys());
// values() : 모든 값을 반복기 객체로 가져옵니다.
console.log('searchParams.values():', myURL.searchParams.values());
// append(키, 값) : 해당 키를 추가합니다. 키가 중복되어도 하나더 추가합니다.
myURL.searchParams.append('filter', 'es3');
myURL.searchParams.append('filter', 'es6');
console.log(myURL.searchParams.getAll('filter'));
// set() : 같은 키의 값을 모두 지우고 새로 추가합니다.
myURL.searchParams.set('filter', 'es6');
console.log(myURL.searchParams.getAll('filter'));
// delete() : 해당 키를 제거합니다.
myURL.searchParams.delete('filter');
console.log(myURL.searchParams.getAll('filter'));
// toString() : 조작한 searchParam을 다시 문자열로 만듭니다.
console.log('searchParams.toString():', myURL.searchParams.toString());
myURL.search = myURL.searchParams.toString();
3-1. querystring
- search 부분을 사용하기 쉽게 객체로 만드는 모듈
const url = require('url');
const querystring = require('querystring');
const parsedUrl = url.parse('http://www.ioi.co.kr/?page=3&limit=10&category=nodejs&category=javascript');
const query = querystring.parse(parsedUrl.query);
console.log('querystring.parse():', query);
console.log('querystring.stringify():', querystring.stringify(query));
○ querystring.parse(query) : url의 query부분을 자바스크립트 객체로 분해
○ qurerystring.stringfy(객체) : 분해된 query 객체를 문자열로 다시 조립
Node 내장 모듈 03 (0) | 2022.09.14 |
---|---|
Node 내장 모듈 02 (0) | 2022.09.14 |
[JavaScript] process.nextTick (0) | 2022.09.13 |
[JavaScript] process.env / process.exit (0) | 2022.09.13 |
[JavaScript] module (0) | 2022.09.13 |
댓글 영역