os 모듈
노드가 제공하는 내장 모듈을 require로 사용.
- 내장 모듈은 경로 없이 이름만 기재 가능
os 모듈 메서드
os.arch(): process.arch와 동일
os.platform(): process.platform과 동일
os.type(): 운영체제의 종류
os.uptime(): 운영체제 부팅 이후 경고 시간(초). process.uptime()은 노드의 실행 시간
나머진 알아서
path
폴더와 파일의 경로를 쉽게 조작하도록 도와주는 모듈
- path.sep: 경로 구분자 windows는 \, POSIX는 /
- path.delimeter - 나중에
- path.dirname(경로): 파일이 위치한 폴더 경로
- path.extname(경로): 파일의 확장자
- path.basename(경로, 확장자): 파일 이름(확장자 포함), 두 번째 인자에 파일의 확장자를 넣으면 확장자 제외 가능
- path.parse(경로): 파일의 경로를 root, dir, base, ext, name으로 분리
- path.format(객체): path.parse()한 객체를 파일 경로로 합침
- path.normalize(경로): \나 /를 실수로 여러 번 사용했거나 혼용했을 때 정상적인 경로로 변환해줌
- path.isAbsolute(경로): 파일의 경로가 절대경로인지 상대경로인지 true or false로 알려줌
- path.relative(기준경로, 비교경로): 첫 번째 경로에서 두 번째 경로로 가는 방법을 알려줌
- path.join(경로, .. .): 여러 인자로 넣은 여러 경로를 하나의 경로로 연결. 상대 경로인 ..(부모 dir)과 .(현재 위치)등도 처리
- path.resolve(경로, ...): path.join()과 비슷하지만, /를 만나면 절대경로로 인식해서 앞의 경로를 무시하고 연결
join과 resolve의 차이
- .resolve()는 /를 절대경로로 처리, .join()은 상대경로로 처리
- 상대경로: 현재 파일 기준. 같은 경로 = . , 한 단계 상위(부모) 경로 = ..
- 절대 경로는 루트 폴더나 노드 프로세스가 실행되는 위치가 기준
path.join('/a', '/b', 'c'); /* 결과: /a/b/c */
path.resolve('/a', '/b', 'c'); /* 결과: /b/c */
url 모듈
인터넷 주소를 쉽게 조작하도록 도와주는 모듈
- url 처리의 두 가지 방식(WHATWG 방식 vs 기존 노드 방식) 중 요즘은 WHATWG 방식만 사용
WHATWG 주소 체계 - 포트 번호가 없는 경우도 있음 -> 이건 뒤에서 설명

url은 노드 내장 객체이기도 해서 require 필요 없음
new URL(주소)
- url 주소를 부분별로 분해해서 origin, protocol, username, host, searchParams 등 속성을 포함하는 객체를 생성
url.format(object)
- 분해된 url 객체를 다시 원래 상태로 조립
searchParams(URL 모듈 속성 중 하나임)
- WHATWG의 URL 생성자로 만든 주소 객체에 포함된 객체
- URL 주소에서 search 부분(쿼리스트링)을 다루기 위한 객체
쿼리스트링은 보통 주소를 통해 데이터를 전달할 때 사용
- '?'로 시작해서, 그 뒤에 '키=값' 형식으로 데이터를 전달
- 여러 키가 있을 경우 '&'로 구분
.getAll(key)
- 키에 해당하는 모든 값들을 가져옴.
- category 키에는 두 가지 값, 즉 node.js와 javascript의 값이 들어 있다.
- .get(key): 키에 해당하는 첫 번째 값만 가져옴
- .has(key): 해당 키가 있는지 없는지를 검사
- .keys(): searchParams의 모든 키를 반복기 객체로 가져옴
- .values(): searchParams의 모든 값을 반복기 객체로 가져옴
- .append(key, value): 해당 키를 추가. 같은 키의 값이 있다면 유지하고 하나 더 추가
- .set(key, val): append와 비슷하지만 같은 키의 값등를 모두 지우고 새로 추가
- .delete(key): 해당 키를 제거
- .toString(): 조작한 searchParams 객체를 다시 문자열로 만듦. 이 문자열을 search에 대입하면 주소 객체에 반영됨
const queryString = searchParams.toString();
// e.g. id가 'admin', password가 '123123'일 경우 url
// http://www.loginPage.com/?id=admin&password=123123'Dev > Node.js' 카테고리의 다른 글
| Cannot set headers after they are sent to the client 오류 (0) | 2024.04.30 |
|---|---|
| [Node.js] 10 - 노드 내장 객체 - console, process.env, nextTick (3) | 2024.04.27 |
| [Node.js] 09 - CommonJS & ECMAScripts Module (1) | 2024.04.22 |
| [Node.js] 08 - npm(Node Package Manager) (4) | 2024.04.22 |
| [Node.js] 07 - https와 http2 (0) | 2024.04.22 |