Node.js 18: API 가져오기, Test Runner 모듈 등

이번 주에 Node.js v18이 릴리스되었으며 이 주요 릴리스에서 새롭고 놀라운 기능을 찾을 수 있습니다. 가장 중요한 것들을 확인해 봅시다. 🚀

가져오기 API


node-fetch 패키지에 작별을 고하십시오. 이제 fetch API는 기본적으로 전역 범위에서 사용할 수 있습니다.

const res = await fetch('https://api.belo.app/public/price');
if (res.ok) {
  const data = await res.json();
  console.log(data);
}


우리는 브라우저에서 하는 것처럼 요청을 할 수 있습니다. 🙌

테스트 실행기 모듈



이제 외부 패키지 없이도 Node.js에서 테스트를 만들 수 있습니다.

import test from 'node:test';
import assert from 'node:assert';

test('synchronous passing test', (t) => {
  // This test passes because it does not throw an exception.
  assert.strictEqual(1, 1);
});


또한 상위 테스트 내에서 하위 테스트를 그룹화할 수 있습니다.

test('top level test', async (t) => {
  await t.test('subtest 1', (t) => {
    assert.strictEqual(1, 1);
  });

  await t.test('subtest 2', (t) => {
    assert.strictEqual(2, 2);
  });
});


https://nodejs.org/dist/latest-v18.x/docs/api/test.html 에서 자세히 알아보십시오.

접두사 전용 코어 모듈



이 이상한 수입품을 본 적이 있습니까?

import test from 'node:test';


이 릴리스에서는 node: 접두사를 사용하여 모든 핵심 모듈을 가져올 수 있으므로 fsnode:fs 가져오기 간에 차이가 없습니다. 그러나 test 모듈은 node:test 접두어 형식을 사용해서만 가져올 수 있습니다.

💡 node:test를 로드할 때 node: 접두사가 포함되지 않은 경우 Node.js는 test 폴더에서 node_modules라는 모듈을 로드하려고 시도합니다.

V8 10.1



Node.js v18에는 ​​다음 기능이 포함되지 않은 Node.js v17 버전에도 불구하고 Chromium v101의 일부인 V8 엔진 v10.1이 함께 제공됩니다.
  • findLast and findLastIndex array methods .
  • Intl.Locale API이 개선되었습니다.
  • Intl.supportedValuesOf function .

  • 결론



    이 릴리스에서 가장 눈에 띄는 변경 사항만 언급했습니다. Node.js v18은 올해 10월에 LTS로 승격됩니다.

    전체 변경 로그here를 확인할 수 있습니다.

    좋은 웹페이지 즐겨찾기