Node.js에는 require() 없이 애플리케이션 어디에서나 사용할 수 있는 여러 전역 객체와 기능이 함께 제공됩니다. 주요 전역 객체 중 일부는 다음과 같습니다:
예)
console.log(__dirname); // outputs the current directory console.log(__filename); // outputs the full path of the current file
Node.js는 코드가 더 작고 재사용 가능한 모듈로 나누어지는 모듈식 구조를 따릅니다. require() 함수를 사용하여 내장 모듈이나 사용자 정의 모듈을 로드할 수 있습니다.
예) Node.js에는 세 가지 유형의 모듈이 있습니다:
const fs = require('fs'); // Require the built-in file system module
Node.js의 경로 모듈은 파일 및 디렉터리 경로 작업을 위한 유틸리티를 제공합니다. 경로 구분 기호(Windows의 경우 \)는 운영 체제마다 다를 수 있으므로 코드를 플랫폼 독립적으로 만드는 데 특히 유용합니다.
예) 경로 모듈의 주요 메소드:
const path = require('path'); const filePath = path.join(__dirname, 'folder', 'file.txt'); console.log(filePath); // Combines the paths to create a full file path
Node.js의 프로세스 객체는 현재 Node.js 프로세스에 대한 정보와 제어를 제공합니다. 런타임 환경과 인터넷을 연결할 수 있게 해주는 전역 개체입니다.
예) 일부 유용한 속성 및 처리 방법은 다음과 같습니다.
console.log(process.argv); // Returns an array of command-line arguments console.log(process.env); // Accesses environment variables
Node.js는 특히 표준 입력 및 출력 작업을 위한 프로세스 객체를 통해 입력 및 출력을 처리하는 간단한 방법을 제공합니다.
예) 이 예에서는 사용자 입력을 수신하여 콘솔에 기록합니다. 고급 I/O 처리를 위해 전체 I/O를 한 번에 메모리에 로드하는 대신 데이터를 하나씩 처리할 수 있는 스트림을 사용할 수도 있습니다.
process.stdin.on('data', (data) => { console.log(`You typed: ${data}`); });
파일 관리는 많은 Node.js 애플리케이션의 중요한 부분이며 Node의 fs(파일 시스템) 모듈은 파일 시스템을 사용하는 다양한 방법을 제공합니다. 비동기식 또는 동기식 API를 사용하여 파일을 읽고, 쓰고, 관리할 수 있습니다.
예)
const fs = require('fs'); // Asynchronous file reading fs.readFile('example.txt', 'utf8', (err, data) => { if (err) throw err; console.log(data); }); // Writing to a file fs.writeFile('output.txt', 'This is some content', (err) => { if (err) throw err; console.log('File written successfully'); });
Node.js에는 대용량 데이터를 효율적으로 처리하는 데 사용되는 스트림 작업을 위한 강력한 시스템도 있습니다. 스트림은 파일 읽기/쓰기 또는 네트워크 통신 처리에 자주 사용됩니다.
const fs = require('fs'); const readStream = fs.createReadStream('example.txt'); const writeStream = fs.createWriteStream('output.txt'); readStream.pipe(writeStream); // Piping data from one file to another
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3