Programming (467) 썸네일형 리스트형 4. Node 기능 살펴보기 (4) - 노드 내장 모듈 5 [url 1/2] ○ url url은, 예상했다시피 인터넷 주소 사용을 도와주는 모듈입니다. url 처리 방식도 여러 가지가 있는데, 현재는 노드 7에서 추가된 WHATWG(단체명) 방식의 url을 사용합니다. 이전부터 사용하던 방식도 존재하지만, 현재는 WHATWG 방식만을 사용한다고 생각하시면 됩니다. 이는 브라우저에서도 사용하는 방식이어서 호환성 이슈도 없습니다. 일단, 아래 그림과 같이 WHATWG와 노드의 주소 체계 구조를 살펴보겠습니다. 우리가 흔히 알고 있는 url 주소가 WHATWG에서 어떤 범위로 구분되는지를 이해하면 됩니다. 조금 복잡해보이긴 합니다. 그럼 아래와 같이 코드 상에서 이 URL 객체를 출력해 보도록 하겠습니다. 참고로 아래 코드에서 URL은 노드 내장 객체이기 때문에 require가 필수적.. 4. Node 기능 살펴보기 (4) - 노드 내장 모듈 4 앞선 아티클에서 path에 대해서 살펴보았는데, 다 언급하지 못한 내용들이 있어 보충하는 차원에서 좀 더 알아보겠습니다. 4. Node 기능 살펴보기 (4) - 노드 내장 모듈 3 앞선 아티클에서 path 모듈에 대한 기본적인 내용을 살펴보았습니다. 앞의 내용을 바탕으로 path 모듈에서 사용하는 세부적인 구분자와 명령어들을 살펴보도록 하겠습니다. 4. Node 기능 살펴보기 ( nozeroslope.tistory.com ※ ' \\ '와 ' \ '를 사용하는 경우 콘솔에서 출력되는 결과를 보면 \\와 \가 혼용되는 경우가 있습니다. 기본적으로는 당연히 경로를 표시할 때 \ 하나를 사용하는 것이 정석입니다. 다만, Javascript에서 ' \ '는 특수 문자이기 때문에 \\를 사용하는 경우가 생기는 것.. 4. Node 기능 살펴보기 (4) - 노드 내장 모듈 3 앞선 아티클에서 path 모듈에 대한 기본적인 내용을 살펴보았습니다. 앞의 내용을 바탕으로 path 모듈에서 사용하는 세부적인 구분자와 명령어들을 살펴보도록 하겠습니다. 4. Node 기능 살펴보기 (4) - 노드 내장 모듈 2 ○ path path 모듈은 폴더, 파일 경로를 다루는 데 사용하는 모듈입니다. 경로에서 파일 이름 또는 확장자만 따로 분리해서 사용할 수 있게 해주는 등의 기능을 갖고 있기 때문에, 상황에 따라서 유 nozeroslope.tistory.com const path = require('path'); const string = __filename; console.log('path.sep:', path.sep); console.log('path.delimiter:', path.deli.. 4. Node 기능 살펴보기 (4) - 노드 내장 모듈 2 ○ path path 모듈은 폴더, 파일 경로를 다루는 데 사용하는 모듈입니다. 경로에서 파일 이름 또는 확장자만 따로 분리해서 사용할 수 있게 해주는 등의 기능을 갖고 있기 때문에, 상황에 따라서 유용하게 사용할 수 있습니다. 특히, 사소한 것 같지만 OS에 따라서 경로 구분자가 다르다는 점도 path 모듈의 필요성을 만드는데 일조합니다. 윈도 타입일 경우 우리가 잘 아는 ' \ '가 사용되지만, POSIX 타입 - 즉 유닉스 기반의 운영체제인 맥과 리눅스의 경우 ' / '가 사용됩니다. 이번에도 역시 아래와 같이 예제를 살펴보고, 결과를 보겠습니다. 각 함수에 대한 자세한 설명은 다음 아티클에서 계속 진행하겠습니다. const path = require('path'); const string = __.. 4. Node 기능 살펴보기 (4) - 노드 내장 모듈 1 내장 객체와 비슷한 방식으로, 노드는 브라우저에서의 Javascript보다 더 많은 기능을 제공합니다. 물론 노드 버전에 따라서 모듈(파일 레벨)의 기능은 차이가 있지만, 가장 안정적인 내용을 위주로 살펴보겠습니다. ○ os os 모듈은 말 그대로 운영체제의 정보를 가져옵니다. require('os') 또는 require('node:os')로 모듈 로드가 가능한데요, 실제 파일이 존재하는 것은 아니지만 노드가 자동으로 해당 모듈을 인식하게 됩니다. 다음 예제를 보겠습니다. const os = require('os'); console.log('os.arch():', os.arch()); console.log('os.platform():', os. platform()); console.log('os.type.. 4. Node 기능 살펴보기 (3) - 노드 내장 객체 : 기타 지금까지 아티클에서 언급되지 않은 내장 객체들에 대해서도 간단하게 살펴보겠습니다. 대표적인 예로, fetch를 들 수 있겠네요. fetch도 브라우저에서 사용하던 객체였는데 노드에서도 사용할 수 있게 동일하게 생성되었습니다. 기본적으로 fetch는 네트워크를 통해 리소스를 가져오는 기능을 담당하는 함수입니다. 이 함수는 주로 웹 서버에서 데이터를 가져와서 웹 페이지에 보여주는 데 사용되죠. fetch를 사용하면 웹사이트에서 다른 웹사이트의 데이터를 가져올 수 있는 것이죠. 이를 통해 API를 호출하거나 원격 서버에 요청을 보내는 등의 작업을 할 수 있습니다. 아래의 예제는 https://www.example.com/image.jpg 이미지를 가져와서 화면에 표시하는 예제입니다. 먼저 fetch를 사용하여.. 4. Node 기능 살펴보기 (3) - 노드 내장 객체 : process 2 ○ process.nextTick(callback) process.nextTick(callback) 함수를 사용하면, 이벤트 루프가 다른 콜백 함수들보다 nextTick의 콜백 함수를 우선으로 처리하도록 만듭니다. 일단은 예제를 통해서 살펴보도록 하겠습니다. setImmediate( () => { console.log('immediate'); } ); process.nextTick( () => { console.log('nextTick'); } ); setTimeout( () => { console.log('timeout') }, 0 ); Promise.resolve().then( () => console.log('promise') ); 위 코드의 결과를 예상해 볼까요? 사실, 기본 예상과는 다르게 ne.. 4. Node 기능 살펴보기 (3) - 노드 내장 객체 : process 1 기본적으로 process라는 객체는 현재 실행되는 노드 프로세스에 대한 정보를 제공합니다. process 객체에 다양한 속성이 존재하는데, 아래와 같이 직접 입력해서 결과를 살펴보겠습니다. Welcome to Node.js v20.11.0. Type ".help" for more information. > process.version 'v20.11.0' // 설치된 노드의 버전 > process.arch 'x64' // 프로세서 아키텍쳐의 정보. ex) arm, ia32 > process.platform 'win32' // 운영체제 플랫폼 정보. ex) linux, darwin, freebsd > process.pid 17296 // 현재 프로세스 아이디. 다수 프로세스 실행 시 구분값 > process.. 이전 1 ··· 16 17 18 19 20 21 22 ··· 59 다음