프로그래밍 언어/NODE JS

util

· 코딩마이데이

util이라는 이름처럼 각종 편의 기능을 모아둔 모듈이다. 계속해서 API가 추가되고 있으며, 가끔 deprecated되어 사라지는 경우도 있습니다.

 

deprecated란?

deprecated는 프로그래밍 용어로, '중요도가 떨어져 더 이상 사용되지 않고 앞으로는 사라지게 될' 것이라는 뜻입니다.

 

util.js

const util = require("util");
const crypto = require("crypto");

const dontUseMe = util.deprecate((x, y) => {
  console.log(x + y);
}, "dontUseMe 함수는 deprecated되었으니 더 이상 사용하지 마세요!");
dontUseMe(1, 2);

const randomBytesPromise = util.promisify(crypto.randomBytes);
randomBytesPromise(64)
  .then((buf) => {
    console.log(buf.toString("base64"));
  })
  .catch((error) => {
    console.error(error);
  });

 

  • util.deprecate: 함수가 deprecated 처리되었음을 알립니다. 첫 번째 인수로 넣은 함수를 사용했을 때 경고 메시지가 출력됩니다. 두 번째 인수로 경고 메시지 내용을 넣으면 됩니다. 함수가 조만간 사라지거나 변경될 때 알려줄 수 있어 유용합니다.
  • util.promisify: 콜백 패턴을 프로미스 패턴으로 바꿉니다. 바꿀 함수를 인수로 제공하면 됩니다. 이렇게 바꿔두면 async/await 패턴까지 사용할 수 있어 좋습니다. 프로미스를 바꾸는 util.callbackify도 있지만 자주 사용되지는 않습니다.

콘솔

$ node util
3
(node:13720) DeprecationWarning: dontUseMe 함수는 deprecated되었으니 더 이상 사용하지 마세요!
(Use `node --trace-deprecation ...` to show where the warning was created)
q68hST03TKdxiI/CcnBcsMzm/U45DCvZCsmqpXYYgOEOY8FHy15WpwWiPjVlsI/7mOpBGkBoUqi+tw6L6c0Sig==

 

'프로그래밍 언어 > NODE JS' 카테고리의 다른 글

기타 모듈들  (0) 2025.04.19
worker_threads  (0) 2025.04.13
crypto  (0) 2025.04.07
querystring  (0) 2025.04.04
url  (0) 2025.04.01