Nodejs 16

Nút. js là môi trường thời gian chạy JavaScript đa nền tảng, mã nguồn mở được xây dựng trên công cụ JavaScript V8 của Chrome, thực thi mã JavaScript bên ngoài trình duyệt

Phát hànhĐã phát hànhHỗ trợ tích cựcHỗ trợ bảo mậtMới nhất192 tháng và 2 tuần trướcKết thúc sau 3 thángKết thúc sau 5 tháng18 (LTS)8 tháng trướcKết thúc sau 9 thángKết thúc sau 2 năm 4 tháng171 năm 2 tháng trướcĐã kết thúc 9 tháng trướcĐã kết thúc 7 tháng trước17. 9. 116 (LTS)1 năm 8 tháng trước Đã kết thúc 2 tháng 2 tuần trước Kết thúc sau 8 tháng 152 năm trước Đã kết thúc 1 năm 9 tháng trước Đã kết thúc 1 năm 7 tháng trước15. 14. 014 (LTS)2 năm 8 tháng trướcĐã kết thúc 1 năm 2 tháng trướcKết thúc 4 tháng133 năm trướcĐã kết thúc 2 năm 9 tháng trướcĐã kết thúc 2 năm 7 tháng trước13. 14. 012 (LTS)3 năm 8 tháng trước Đã kết thúc 2 năm trước Đã kết thúc 8 tháng trước12. 22. 12114 năm trướcĐã kết thúc 3 năm 9 tháng trướcĐã kết thúc 3 năm 6 tháng trước11. 15. 010 (LTS)4 năm 8 tháng trướcĐã kết thúc 2 năm 7 tháng trướcĐã kết thúc 1 năm 8 tháng trước10. 24. 195 năm trướcĐã kết thúc 4 năm 6 tháng trướcĐã kết thúc 4 năm 6 tháng trước9. 11. 28 (LTS)5 năm 7 tháng trướcĐã kết thúc 4 năm trướcĐã kết thúc 3 năm trước8. 17. 076 năm trướcEnded 5 năm trướcEnded 5 năm trước7. 10. 16 (LTS)6 năm 8 tháng trước Kết thúc 4 năm 8 tháng trước Kết thúc 3 năm 8 tháng trước6. 17. 157 năm trướcEnded 6 năm trướcEnded 6 năm trước5. 12. 04 (LTS)7 năm trước Kết thúc 5 năm 9 tháng trước Kết thúc 4 năm 8 tháng trước4. 9. 137 năm trướcNoNo3. 3. 127 năm trướcNoNo2. 5. 017 năm và 11 tháng trướcNoNo1. 8. 4

nút chính. js nhập Trạng thái phát hành hiện tại trong sáu tháng, giúp các tác giả thư viện có thời gian thêm hỗ trợ cho chúng. Sau sáu tháng, các bản phát hành số lẻ (9, 11, v.v. ) trở nên không được hỗ trợ và các bản phát hành được đánh số chẵn (10, 12, v.v. ) chuyển sang trạng thái Active LTS và sẵn sàng để sử dụng chung. Trạng thái phát hành LTS là “hỗ trợ dài hạn”, thường đảm bảo rằng các lỗi nghiêm trọng sẽ được sửa trong tổng thời gian 30 tháng. Các ứng dụng sản xuất chỉ nên sử dụng các bản phát hành Active LTS hoặc Bảo trì LTS

Nếu một bản phát hành được đánh số chẵn ở trên không được đánh dấu là LTS, thì bản phát hành đó chưa được nhập vào “Active LTS” và không được khuyến nghị sử dụng cho Sản xuất

Ngày kết thúc vòng đời của nút. js 16 đã được dời về phía trước bảy tháng trùng với thời điểm kết thúc hỗ trợ OpenSSL 1. 1. 1 vào ngày 11 tháng 9 năm 2023

Thêm thông tin có sẵn trên Node. trang web js

Bạn nên chạy một trong những số phát hành được hỗ trợ được liệt kê ở trên trong cột ngoài cùng bên phải

Bạn có thể kiểm tra phiên bản mà bạn hiện đang sử dụng bằng cách chạy.

node --version


Bạn có thể gửi một cải tiến cho trang này trên GitHub. Trang này có một Trang thảo luận tương ứng

Phiên bản JSON của trang này có tại /api/nodejs. json. Xem Tài liệu API để biết thêm thông tin. Bạn có thể đăng ký nguồn cấp dữ liệu lịch tại /calendar/nodejs. ics

Tải xuống nút. js, trình cài đặt dựng sẵn cho nền tảng của bạn hoặc cài đặt qua trình quản lý gói

Đề xuất cho hầu hết người dùng

  • cài đặt cửa sổ

    nút-v18. 12. 1-x86. msi

  • Trình cài đặt MAC

    nút-v18. 12. 1. pkg

  • Mã nguồn

    nút-v18. 12. 1. hắc ín. gz

Bản phát hành sắp tới

  • Nút. v20
  • Nút. v19
  • Nút. js v18
  • Nút. js v16
  • Nút. js v14

nút chính. js nhập Trạng thái phát hành hiện tại trong sáu tháng, giúp các tác giả thư viện có thời gian thêm hỗ trợ cho chúng. Sau sáu tháng, các bản phát hành số lẻ (9, 11, v.v. ) trở nên không được hỗ trợ và các bản phát hành được đánh số chẵn (10, 12, v.v. ) chuyển sang trạng thái Active LTS và sẵn sàng để sử dụng chung. Trạng thái phát hành LTS là "hỗ trợ dài hạn", thường đảm bảo rằng các lỗi nghiêm trọng sẽ được sửa trong tổng thời gian 30 tháng. Các ứng dụng sản xuất chỉ nên sử dụng các bản phát hành Active LTS hoặc Bảo trì LTS

Phát hànhTrạng tháiMã tênPhát hành lần đầu Bắt đầu LTS đang hoạt độngBảo trì Bắt đầu LTSKết thúc vòng đờiv20Đang chờ xử lý2023-04-182023-10-242024-10-222026-04-30v19Hiện tại2022-10-182023-04-012023-06-01v18LTS đang hoạt độnghydrogen2022-04-10-182023-04-012023-06-01v18LTS đang hoạt động2022-04-19202-1920252

Blog này được viết bởi Bethany Griggs, với sự đóng góp bổ sung từ Node. ban chỉ đạo kỹ thuật js

Chúng tôi rất vui mừng thông báo về việc phát hành Node. js 16 hôm nay. Điểm nổi bật bao gồm việc cập nhật công cụ JavaScript V8 lên 9. 0, các tệp nhị phân Apple Silicon dựng sẵn và các API ổn định bổ sung

Bạn có thể tải xuống bản phát hành mới nhất từ ​​​​https. //nodejs. org/en/download/current/, hoặc sử dụng Node Version Manager trên UNIX để cài đặt với nvm install 16. nút. bài đăng trên blog js chứa nhật ký thay đổi có sẵn tại https. //nodejs. org/vi/blog/phát hành/v16. 0. 0

Ban đầu, Nút. js 16 sẽ thay thế Node. js 15 là dòng phát hành 'Hiện tại' của chúng tôi. Theo , Nút. js 16 sẽ là bản phát hành 'Hiện tại' trong 6 tháng tới và sau đó được nâng cấp lên Hỗ trợ dài hạn (LTS) vào tháng 10 năm 2021. Sau khi được nâng cấp lên hỗ trợ dài hạn, bản phát hành sẽ được đặt tên mã là 'Gallium'

Xin nhắc lại — Nút. js 12 sẽ vẫn được hỗ trợ dài hạn cho đến tháng 4 năm 2022 và Node. js 14 sẽ vẫn được hỗ trợ dài hạn cho đến tháng 4 năm 2023. Nút. js 10 sẽ End-of-Life vào cuối tháng này (tháng 4 năm 2021). Thông tin chi tiết về kế hoạch/lịch trình phát hành của chúng tôi có thể được tìm thấy trong Nút. kho lưu trữ Nhóm công tác phát hành js

V8 nâng cấp lên V8 9. 0

Như mọi khi, một phiên bản mới của công cụ JavaScript V8 mang đến các cải tiến và chỉnh sửa hiệu suất cũng như giữ cho Node. js được cập nhật với các tính năng của ngôn ngữ JavaScript. trong nút. js v16. 0. 0, động cơ V8 được cập nhật lên V8 9. 0 — tăng từ V8 8. 6 trong nút. js 15

Bản cập nhật này mang đến Chỉ số đối sánh RegExp ECMAScript, cung cấp chỉ số bắt đầu và kết thúc của chuỗi đã chụp. Mảng chỉ mục có sẵn thông qua thuộc tính .indices trên các đối tượng khớp khi biểu thức chính quy có cờ /d

> const matchObj = /(Java)(Script)/d.exec('JavaScript');undefined> matchObj.indices[ [ 0, 10 ], [ 0, 4 ], [ 4, 10 ], groups: undefined ]> matchObj.indices[0]; // Match[ 0, 10 ]> matchObj.indices[1]; // First capture group[ 0, 4 ]> matchObj.indices[2]; // Second capture group[ 4, 10 ]

Để biết thêm thông tin về các tính năng và bản cập nhật mới trong V8, hãy xem blog V8. https. //v8. nhà phát triển/

API hẹn giờ ổn định

Timers Promises API cung cấp một bộ chức năng hẹn giờ thay thế trả về các đối tượng Promise, loại bỏ nhu cầu sử dụng

> const matchObj = /(Java)(Script)/d.exec('JavaScript');undefined> matchObj.indices[ [ 0, 10 ], [ 0, 4 ], [ 4, 10 ], groups: undefined ]> matchObj.indices[0]; // Match[ 0, 10 ]> matchObj.indices[1]; // First capture group[ 0, 4 ]> matchObj.indices[2]; // Second capture group[ 4, 10 ]
0

import { setTimeout } from 'timers/promises';async function run() {  await setTimeout(5000);  console.log('Hello, World!');}run();

Đã thêm vào nút. js v15. 0. 0 của James Snell (https. //github. com/nodejs/node/pull/33950), trong bản phát hành này, chúng chuyển từ trạng thái thử nghiệm sang trạng thái ổn định

Các tính năng gần đây khác

Bản chất của quy trình phát hành của chúng tôi có nghĩa là các tính năng mới được phát hành trong dòng phát hành 'Hiện tại' khoảng hai tuần một lần. Vì lý do này, nhiều bổ sung gần đây đã được cung cấp trong phiên bản Node gần đây nhất. js 15, nhưng vẫn còn tương đối mới đối với thời gian chạy

Một số tính năng được phát hành gần đây trong Node. js 15, cũng sẽ có sẵn trong Node. js 16, bao gồm

  • Triển khai thử nghiệm API Web Crypto tiêu chuẩn
  • npm 7 (v7. 10. 0 trong nút. js v16. 0. 0)
  • Nút-API phiên bản 8
  • Triển khai
    > const matchObj = /(Java)(Script)/d.exec('JavaScript');undefined> matchObj.indices[ [ 0, 10 ], [ 0, 4 ], [ 4, 10 ], groups: undefined ]> matchObj.indices[0]; // Match[ 0, 10 ]> matchObj.indices[1]; // First capture group[ 0, 4 ]> matchObj.indices[2]; // Second capture group[ 4, 10 ]
    1 ổn định dựa trên API Web AbortController
  • Bản đồ nguồn ổn định v3
  • Nền tảng web triển khai atob (
    > const matchObj = /(Java)(Script)/d.exec('JavaScript');undefined> matchObj.indices[ [ 0, 10 ], [ 0, 4 ], [ 4, 10 ], groups: undefined ]> matchObj.indices[0]; // Match[ 0, 10 ]> matchObj.indices[1]; // First capture group[ 0, 4 ]> matchObj.indices[2]; // Second capture group[ 4, 10 ]
    2) và btoa (
    > const matchObj = /(Java)(Script)/d.exec('JavaScript');undefined> matchObj.indices[ [ 0, 10 ], [ 0, 4 ], [ 4, 10 ], groups: undefined ]> matchObj.indices[0]; // Match[ 0, 10 ]> matchObj.indices[1]; // First capture group[ 0, 4 ]> matchObj.indices[2]; // Second capture group[ 4, 10 ]
    3) để tương thích với API nền tảng web cũ

Trình biên dịch mới và nền tảng tối thiểu

Nút. js cung cấp các tệp nhị phân dựng sẵn cho một số nền tảng khác nhau. Đối với mỗi bản phát hành chính, chuỗi công cụ tối thiểu được đánh giá và nâng lên khi thích hợp

Nút. js v16. 0. 0 sẽ là bản phát hành đầu tiên mà chúng tôi gửi các tệp nhị phân dựng sẵn cho Apple Silicon. Mặc dù chúng tôi sẽ cung cấp các tarball riêng cho kiến ​​trúc Intel (

> const matchObj = /(Java)(Script)/d.exec('JavaScript');undefined> matchObj.indices[ [ 0, 10 ], [ 0, 4 ], [ 4, 10 ], groups: undefined ]> matchObj.indices[0]; // Match[ 0, 10 ]> matchObj.indices[1]; // First capture group[ 0, 4 ]> matchObj.indices[2]; // Second capture group[ 4, 10 ]
4) và ARM (
import { setTimeout } from 'timers/promises';async function run() {  await setTimeout(5000);  console.log('Hello, World!');}run();
0), trình cài đặt macOS (
import { setTimeout } from 'timers/promises';async function run() {  await setTimeout(5000);  console.log('Hello, World!');}run();
1) sẽ được vận chuyển dưới dạng nhị phân 'béo' (đa kiến ​​trúc)

Việc sản xuất các tệp nhị phân này được thực hiện nhờ vào sự hào phóng của MacStadium tặng phần cứng cần thiết cho dự án

Trên các nền tảng dựa trên Linux của chúng tôi, mức GCC tối thiểu để xây dựng Node. js 16 sẽ là GCC 8. 3. Chi tiết về các bộ công cụ và trình biên dịch được hỗ trợ được ghi lại trong Node. tập tin js

Khấu hao

Là một bản phát hành chính mới, đây cũng là lúc chúng tôi giới thiệu các biện pháp ngừng sử dụng thời gian chạy mới. nút. js nhằm mục đích giảm thiểu sự gián đoạn đối với hệ sinh thái đối với bất kỳ thay đổi vi phạm nào. Dự án sử dụng một công cụ có tên CITGM (Chim hoàng yến trong mỏ vàng), để kiểm tra tác động của bất kỳ thay đổi vi phạm nào (bao gồm cả việc ngừng sử dụng) đối với một số lượng lớn các mô-đun hệ sinh thái phổ biến nhằm cung cấp thông tin chi tiết bổ sung trước khi áp dụng những thay đổi này

Sự phản đối đáng chú ý trong Node. js 16 bao gồm việc ngừng sử dụng quyền truy cập vào

import { setTimeout } from 'timers/promises';async function run() {  await setTimeout(5000);  console.log('Hello, World!');}run();
2 trong thời gian chạy đối với một số mô-đun cốt lõi, chẳng hạn như
import { setTimeout } from 'timers/promises';async function run() {  await setTimeout(5000);  console.log('Hello, World!');}run();
3

Cảm ơn bạn

Một bản phát hành chính mới là tổng hợp nỗ lực của tất cả những người đóng góp cho dự án và Node. js, vì vậy chúng tôi muốn nhân cơ hội này để gửi lời cảm ơn sâu sắc đến bạn. Đặc biệt, chúng tôi muốn cảm ơn Node. js Build Working Group để đảm bảo rằng chúng tôi có cơ sở hạ tầng sẵn sàng để tạo và thử nghiệm các bản phát hành cũng như thực hiện các nâng cấp cần thiết cho chuỗi công cụ của chúng tôi cho Node. js 16

Nút 16 có được hỗ trợ không?

Ngày kết thúc vòng đời của nút. js 16 đã được dời về phía trước bảy tháng trùng với thời điểm kết thúc hỗ trợ OpenSSL 1. 1. 1 vào ngày 11 tháng 9 năm 2023 .

NodeJS 16 là gì?

js 16 tính năng như Hỗ trợ nền tảng được cập nhật, Công cụ JavaScript V8 Phiên bản 9, N-API Phiên bản 8, API hứa hẹn mới và API lưu trữ cục bộ Async.

Nút 16 có ổn định không?

Phiên bản ổn định của Node 16 là một bản phát hành mới quan trọng mang một số tính năng mới cho kênh LTS đồng thời tung ra các điểm nổi bật mới nhất của V8 JavaScript. Điều này đến gần với npm v7 và việc phát hành các bản dựng gốc Apple Silicon. Bạn có thể thuê các nhà phát triển Nodejs nếu bạn dự định thuê ngoài các dịch vụ web bằng Nodejs

Làm cách nào để có phiên bản Node 16?

Cài đặt NodeJS 16 trên Ubuntu 20. 04 .
Bước 1 - Thêm NodeSource PPA. Lệnh này sẽ thêm các nguồn PPA cần thiết để có thể cài đặt NodeJS 16 trên Ubuntu 20 của bạn. 04 cài đặt. cuộn tròn -s https. //deb. nút nguồn. com/setup_16. x. sudo bash. .
Bước 2 - Cài đặt NodeJS 16. .
Bước 3 - Xác nhận phiên bản NodeJS đã cài đặt