더북(TheBook)

노트 노드 내장 모듈과 npm 패키지 이름이 같은 경우는 없나요?

있습니다. 예를 들어 fs(https://www.npmjs.com/package/fs)나 os(https://www.npmjs.com/package/os) 등의 패키지가 npm에 존재합니다. 다만 이러한 패키지를 설치할 이유는 없습니다. 실수로 내장 모듈과 동일한 이름의 패키지를 설치하더라도 require할 때 내장 모듈을 불러오므로 걱정하지 않아도 됩니다. 직접 검증해봅시다.

콘솔

$ npm i fs

protocol.js

console.log(require.resolve('fs'));
console.log(require.resolve('express'));
console.log(require.resolve('node:fs'));

콘솔

$ node protocol
fs
C:\Users\zerocho\npmtest\node_modules\express\index.js
node:fs