Node.js 20.0, āĻāĻžāĻāĻžāĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻā§ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻĒā§āĻ°āĻāĻžāĻļ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ Node.js 20.0 āĻ˛āĻ āĻ¸āĻžāĻĒā§āĻ°ā§āĻ āĻŦā§āĻ°āĻžāĻā§āĻā§ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸ā§āĻĨāĻŋāĻ°āĻāĻ°āĻŖā§āĻ° āĻĒāĻ° āĻ āĻā§āĻā§āĻŦāĻ° āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻ āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻžāĻ¸ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž āĻšāĻŦā§ āĻ¨āĻžāĨ¤ Node.js 20.x 30 āĻāĻĒā§āĻ°āĻŋāĻ˛, 2026 āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻšāĻŦā§āĨ¤ āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ Node.js 18.x LTS āĻļāĻžāĻāĻžāĻ° āĻ°āĻā§āĻˇāĻŖāĻžāĻŦā§āĻā§āĻˇāĻŖ āĻāĻĒā§āĻ°āĻŋāĻ˛ 2025 āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻŦāĻ āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ 16.x LTS āĻļāĻžāĻāĻžāĻ° āĻ¸ā§āĻĒā§āĻā§āĻŽā§āĻŦāĻ° 2023 āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻ˛āĻŦā§āĨ¤ 14.x LTS āĻļāĻžāĻāĻžāĻāĻŋ 30 āĻāĻĒā§āĻ°āĻŋāĻ˛ āĻāĻŦāĻ Node.js 19.x āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻŦāĻ°ā§āĻ¤ā§ āĻļāĻžāĻāĻžāĻāĻŋ 1 āĻā§āĻ¨ āĻĨā§āĻā§ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻŦā§ā§ˇ
āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻāĻ¨ā§āĻ¨āĻ¤āĻŋ:
- V8 āĻāĻā§āĻāĻŋāĻ¨āĻāĻŋ 11.3 āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¯āĻž Chromium 113-āĻ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧāĨ¤ Node.js 19 āĻļāĻžāĻāĻžāĻ° āĻ¤ā§āĻ˛āĻ¨āĻžāĻ¯āĻŧ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§, āĻ¯āĻž Chromium 107 āĻāĻā§āĻāĻŋāĻ¨, String.prototype.isWellFormed āĻāĻŦāĻ toWellFormed āĻĢāĻžāĻāĻļāĻ¨, Array.prototype āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻāĻŋāĻ˛āĨ¤ āĻāĻŦāĻ TypedArray.prototype āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻā§āĻ˛āĻŋ Array āĻāĻŦāĻ TypedArray āĻ āĻŦāĻā§āĻā§āĻā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻāĻĒāĻ° āĻ āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ āĻ¸āĻš āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, RegExp-āĻ "v" āĻĒāĻ¤āĻžāĻāĻž, ArrayBuffer āĻāĻ° āĻāĻāĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻŦāĻ SharedArrayBuffer-āĻāĻ° āĻāĻāĻžāĻ° āĻŦāĻžāĻĄāĻŧāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨, WebAssembly-āĻ āĻā§āĻ˛-āĻāĻ˛āĨ¤
- āĻāĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻ
āĻ¨ā§āĻŽāĻ¤āĻŋ āĻŽāĻĄā§āĻ˛ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻĒā§āĻ°āĻ¸ā§āĻ¤āĻžāĻŦāĻŋāĻ¤ āĻ¯āĻž āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ¤ā§ āĻ
ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻ˛āĻŽāĻžāĻ¨ āĻ
āĻŦāĻ¸ā§āĻĨāĻžāĻ¯āĻŧ "--āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ-āĻ
āĻ¨ā§āĻŽāĻ¤āĻŋ" āĻĒāĻ¤āĻžāĻāĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§ āĻ
āĻ¨ā§āĻŽāĻ¤āĻŋ āĻŽāĻĄā§āĻ˛ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§, FS-āĻāĻ° āĻāĻŋāĻā§ āĻ
āĻāĻļ, āĻļāĻŋāĻļā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž (--āĻ
āĻ¨ā§āĻŽāĻ¤āĻŋ-āĻļāĻŋāĻļā§-āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž) āĻ˛āĻŋāĻāĻ¤ā§ (--āĻ
āĻ¨ā§āĻŽāĻ¤āĻŋ-āĻāĻĢāĻāĻ¸-āĻ˛āĻŋāĻāĻ¤ā§) āĻāĻŦāĻ āĻĒāĻĄāĻŧāĻ¤ā§ (--āĻ
āĻ¨ā§āĻŽāĻ¤āĻŋ-āĻāĻĢāĻāĻ¸-āĻĒāĻ āĻ¨) āĻ
ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻ¸ā§āĻ¤āĻžāĻŦ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ , āĻ
ā§āĻ¯āĻžāĻĄ-āĻ
āĻ¨ (--āĻ¨ā§-āĻ
ā§āĻ¯āĻžāĻĄāĻ¨) āĻāĻŦāĻ āĻĨā§āĻ°ā§āĻĄ (--āĻ
āĻ¨ā§āĻŽāĻ¤āĻŋ-āĻāĻ°ā§āĻŽā§)āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, /tmp āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ¤ā§ āĻ˛āĻŋāĻāĻ¤ā§ āĻāĻŦāĻ /home/index.js āĻĢāĻžāĻāĻ˛ āĻĒāĻĄāĻŧāĻžāĻ° āĻ
āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻāĻŋāĻ¤ā§, āĻāĻĒāĻ¨āĻŋ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨: node --experimental-permission --allow-fs-write=/tmp/ --allow-fs-read =/home/index.js index .js
āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, process.permission.has() āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻā§āĻā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, "process.permission.has('fs.write',"/tmp/test")āĨ¤
- "--āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ-āĻ˛ā§āĻĄāĻžāĻ°" āĻŦāĻŋāĻāĻ˛ā§āĻĒā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ˛ā§āĻĄ āĻāĻ°āĻž ECMAScript āĻŦāĻžāĻšā§āĻ¯āĻŋāĻ āĻŽāĻĄāĻŋāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° (ESMs) āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ°āĻā§āĻ˛āĻŋ āĻāĻāĻ¨ āĻŽā§āĻ˛ āĻĨā§āĻ°ā§āĻĄ āĻĨā§āĻā§ āĻŦāĻŋāĻā§āĻāĻŋāĻ¨ā§āĻ¨ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ āĻĨā§āĻ°ā§āĻĄā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻž āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻā§āĻĄ āĻāĻŦāĻ āĻ˛ā§āĻĄ āĻāĻ°āĻž ESM āĻŽāĻĄāĻŋāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻāĻ¯ā§āĻāĻā§ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻŦā§āĻ°āĻžāĻāĻāĻžāĻ°āĻā§āĻ˛āĻŋāĻ° āĻŽāĻ¤ā§, import.meta.resolve() āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ āĻāĻāĻ¨ āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĨā§āĻā§ āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸āĻāĻžāĻŦā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¯āĻŧāĨ¤ Node.js-āĻāĻ° āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻļāĻžāĻāĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋāĻ¤ā§, ESM āĻ˛ā§āĻĄāĻŋāĻ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨āĻā§ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§āĻ˛ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ā§āĻ° āĻŦāĻŋāĻāĻžāĻā§ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻŋāĻāĻ˛ā§āĻĒāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- āĻ¨ā§āĻĄ:āĻā§āĻ¸ā§āĻ (āĻā§āĻ¸ā§āĻ_āĻ°āĻžāĻ¨āĻžāĻ°) āĻŽāĻĄāĻŋāĻāĻ˛, āĻāĻžāĻāĻžāĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻ¤ā§āĻ°āĻŋ āĻāĻŦāĻ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻ¯āĻž TAP (āĻā§āĻ¸ā§āĻ āĻāĻ¨āĻŋāĻĨāĻŋāĻ āĻĒā§āĻ°ā§āĻā§āĻāĻ˛) āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻā§ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĻā§āĻ¯āĻŧ, āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§āĻ˛ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¯āĻŧ āĻ¸āĻ°āĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ āĻĒāĻžāĻ°āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¸ āĻāĻŋāĻŽ āĻāĻ āĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¯ā§āĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻļāĻžāĻāĻžāĻ° āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĻŋāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻāĻāĻ°āĻāĻ˛ āĻĒāĻžāĻ°ā§āĻ¸āĻŋāĻ, āĻĢā§āĻ() āĻāĻŦāĻ āĻāĻā§āĻ¨ā§āĻ āĻāĻžāĻ°ā§āĻā§āĻ āĻ¸āĻš āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ°āĻžāĻ¨āĻāĻžāĻāĻŽ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻāĻ¤āĻŋ āĻŦāĻžāĻĄāĻŧāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻžāĻ āĻāĻ°ā§āĻā§āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, EventTarget āĻāĻ°āĻŽā§āĻ āĻāĻ°āĻžāĻ° āĻāĻāĻžāĻ°āĻšā§āĻĄ āĻ āĻ°ā§āĻ§ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, URL.canParse() āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻāĻ˛ā§āĻ˛ā§āĻāĻ¯ā§āĻā§āĻ¯āĻāĻžāĻŦā§ āĻāĻ¨ā§āĻ¨āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻŦāĻ āĻāĻžāĻāĻŽāĻžāĻ°āĻā§āĻ˛āĻŋāĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻāĻ¨ā§āĻ¨āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ, āĻāĻāĻāĻŋ āĻāĻā§āĻ-āĻĒāĻžāĻ°āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¸ URL āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ°-āĻāĻ° āĻĒā§āĻ°āĻāĻžāĻļ - Ada 2.0, C ++ āĻ āĻ˛ā§āĻāĻž, āĻ°āĻāĻ¨āĻžāĻāĻŋāĻ¤ā§ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- āĻāĻāĻāĻŋ āĻāĻāĻ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻā§āĻŦāĻ˛ āĻĢāĻžāĻāĻ˛ (SEA, āĻāĻāĻ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻā§āĻŦāĻ˛ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨) āĻāĻāĻžāĻ°ā§ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¸āĻ°āĻŦāĻ°āĻžāĻšā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ā§āĻ° āĻŦāĻŋāĻāĻžāĻļ āĻ āĻŦā§āĻ¯āĻžāĻšāĻ¤ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻāĻāĻŋ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻā§āĻŦāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻ¨ āĻāĻāĻāĻŋ JSON āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĢāĻžāĻāĻ˛ āĻĨā§āĻā§ āĻ¤ā§āĻ°āĻŋ āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻŦ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ (āĻāĻāĻāĻŋ āĻāĻžāĻāĻžāĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻĢāĻžāĻāĻ˛ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§)āĨ¤
- āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒ āĻĨā§āĻā§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻ¨ā§āĻ¨āĻ¤ āĻāĻ¯āĻŧā§āĻŦ āĻā§āĻ°āĻŋāĻĒā§āĻā§ API āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯āĨ¤
- ARM64 āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻāĻāĻ¨ā§āĻĄā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- WASI (WebAssembly System Interface) āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻŦāĻŋāĻ°āĻ¤ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ ā§āĻ¯āĻžāĻ˛ā§āĻ¨ WebAssembly āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¤ā§āĻ°āĻŋāĻ° āĻāĻ¨ā§āĻ¯āĨ¤ WASI āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¸āĻā§āĻˇāĻŽ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻˇ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ˛āĻžāĻāĻ¨ āĻĒāĻ¤āĻžāĻāĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ¸āĻ°āĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§ā§ˇ
Node.js āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽāĻāĻŋ āĻāĻ¯āĻŧā§āĻŦ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻ°āĻā§āĻˇāĻŖāĻžāĻŦā§āĻā§āĻˇāĻŖ āĻāĻŦāĻ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻāĻŦāĻ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻ¤ā§āĻ°āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻ¯āĻŧāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ Node.js-āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻŽāĻĄāĻŋāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻŦāĻĄāĻŧ āĻ¸āĻāĻā§āĻ°āĻš āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻĒāĻ¨āĻŋ HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3 āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻŦāĻ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ, āĻāĻ¨ā§āĻāĻŋāĻā§āĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŽāĻĄāĻŋāĻāĻ˛āĻā§āĻ˛āĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽāĻĄāĻŋāĻāĻ˛āĻā§āĻ˛āĻŋ āĻā§āĻāĻā§ āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻāĻ¯āĻŧā§āĻŦ āĻĢā§āĻ°ā§āĻŽāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ, WebSocket āĻāĻŦāĻ Ajax āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ°, DBMS āĻāĻžāĻ¨ā§āĻā§āĻāĻ° (MySQL, PostgreSQL, SQLite, MongoDB), āĻā§āĻŽāĻĒā§āĻ˛ā§āĻāĻŋāĻ āĻāĻā§āĻāĻŋāĻ¨, CSS āĻāĻā§āĻāĻŋāĻ¨, āĻā§āĻ°āĻŋāĻĒā§āĻā§ āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ āĻāĻŦāĻ āĻ āĻ¨ā§āĻŽā§āĻĻāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ (OAuth), XML āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ° āĻ¸āĻšāĨ¤
āĻŦāĻŋāĻĒā§āĻ˛ āĻ¸āĻāĻā§āĻ¯āĻ āĻ¸āĻŽāĻžāĻ¨ā§āĻ¤āĻ°āĻžāĻ˛ āĻ āĻ¨ā§āĻ°ā§āĻ§ā§āĻ° āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ°āĻŖ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°āĻ¤ā§, Node.js āĻ¨āĻ¨-āĻŦā§āĻ˛āĻāĻŋāĻ āĻāĻā§āĻ¨ā§āĻ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻŋāĻ āĻāĻŦāĻ āĻāĻ˛āĻŦā§āĻ¯āĻžāĻ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ°ā§āĻ° āĻ¸āĻāĻā§āĻāĻžāĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸ āĻā§āĻĄ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻļāĻ¨ āĻŽāĻĄā§āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤ āĻŽāĻžāĻ˛ā§āĻāĻŋāĻĒā§āĻ˛ā§āĻā§āĻ¸āĻŋāĻ āĻ¸āĻāĻ¯ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻā§āĻ˛āĻŋ āĻšāĻ˛ epoll, kqueue, /dev/poll āĻāĻŦāĻ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨āĨ¤ āĻ¸āĻāĻ¯ā§āĻ āĻŽāĻžāĻ˛ā§āĻāĻŋāĻĒā§āĻ˛ā§āĻā§āĻ¸āĻŋāĻāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯, libuv āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻž āĻāĻāĻ¨āĻŋāĻā§āĻ¸ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ libev āĻāĻŦāĻ Windows āĻ IOCP-āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻĄ-āĻ āĻ¨āĨ¤ libeio āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻāĻāĻāĻŋ āĻĨā§āĻ°ā§āĻĄ āĻĒā§āĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ, āĻāĻŦāĻ c-ares āĻ¨āĻ¨-āĻŦā§āĻ˛āĻāĻŋāĻ āĻŽā§āĻĄā§ DNS āĻĒā§āĻ°āĻļā§āĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻā§āĻā§āĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ āĻ¯āĻž āĻŦā§āĻ˛āĻāĻŋāĻ āĻ¸ā§āĻˇā§āĻāĻŋ āĻāĻ°ā§ āĻĨā§āĻ°ā§āĻĄ āĻĒā§āĻ˛ā§āĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻš āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ°ā§, āĻ¸āĻŋāĻāĻ¨ā§āĻ¯āĻžāĻ˛ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ°āĻĻā§āĻ° āĻŽāĻ¤ā§, āĻ¤āĻžāĻĻā§āĻ° āĻāĻžāĻā§āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻāĻāĻāĻŋ āĻ¨āĻžāĻŽāĻšā§āĻ¨ āĻĒāĻžāĻāĻĒā§āĻ° (āĻĒāĻžāĻāĻĒ) āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻĢā§āĻ°āĻ¤ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°ā§āĨ¤ āĻāĻžāĻāĻžāĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻā§āĻĄā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻ Google āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¤ā§āĻ°āĻŋ V8 āĻāĻā§āĻāĻŋāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ (āĻāĻāĻžāĻĄāĻŧāĻž, āĻŽāĻžāĻāĻā§āĻ°ā§āĻ¸āĻĢā§āĻ āĻāĻā§āĻ°-āĻā§āĻ° āĻāĻā§āĻāĻŋāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ Node.js-āĻāĻ° āĻāĻāĻāĻŋ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻā§)āĨ¤
āĻāĻ° āĻŽā§āĻ˛ āĻ
āĻāĻļā§, Node.js āĻĒāĻžāĻ°ā§āĻ˛ āĻ
ā§āĻ¯āĻžāĻ¨āĻŋāĻāĻā§āĻ¨ā§āĻ, āĻ°ā§āĻŦāĻŋ āĻāĻā§āĻ¨ā§āĻ āĻŽā§āĻļāĻŋāĻ¨, āĻĒāĻžāĻāĻĨāĻ¨ āĻā§āĻāĻ¸ā§āĻā§āĻĄ āĻĢā§āĻ°ā§āĻŽāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻāĻŦāĻ āĻāĻŋāĻ¸āĻŋāĻāĻ˛ āĻāĻā§āĻ¨ā§āĻ āĻāĻŽāĻĒā§āĻ˛āĻŋāĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ā§āĻ° āĻ
āĻ¨ā§āĻ°ā§āĻĒ, āĻāĻŋāĻ¨ā§āĻ¤ā§ Node.js-āĻ āĻāĻā§āĻ¨ā§āĻ āĻ˛ā§āĻĒ āĻĄā§āĻā§āĻ˛āĻĒāĻžāĻ°ā§āĻ° āĻāĻžāĻ āĻĨā§āĻā§ āĻ˛ā§āĻāĻžāĻ¨ā§ āĻĨāĻžāĻā§ āĻāĻŦāĻ āĻāĻ˛āĻŽāĻžāĻ¨ āĻāĻ¯āĻŧā§āĻŦ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§ āĻāĻā§āĻ¨ā§āĻ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻŋāĻ-āĻāĻ° āĻŽāĻ¤ā§āĨ¤ āĻŦā§āĻ°āĻžāĻāĻāĻžāĻ°ā§āĨ¤ node.js-āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ˛ā§āĻāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻā§āĻ¨ā§āĻ-āĻāĻžāĻ˛āĻŋāĻ¤ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻŋāĻ-āĻāĻ° āĻŦāĻŋāĻļā§āĻˇāĻ¤ā§āĻŦ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻšāĻŦā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, "var result = db.query("select..");" āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§āĨ¤ āĻāĻžāĻ āĻ¸āĻŽāĻžāĻĒā§āĻ¤āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ
āĻĒā§āĻā§āĻˇāĻž āĻāĻŦāĻ āĻĢāĻ˛āĻžāĻĢāĻ˛ā§āĻ° āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ°āĻŖā§āĻ° āĻ¸āĻžāĻĨā§, Node.js āĻ
ā§āĻ¯āĻžāĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻļāĻ¨ā§āĻ° āĻ¨ā§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§, āĻ¯ā§āĻŽāĻ¨ āĻā§āĻĄāĻāĻŋ "db.query("select..", āĻĢāĻžāĻāĻļāĻ¨ (āĻĢāĻ˛āĻžāĻĢāĻ˛) {āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĒā§āĻ°āĻ¸ā§āĻ¸āĻŋāĻ});-āĻ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻ¯ā§āĻāĻŋāĻ¤ā§ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻ¤āĻžā§āĻā§āĻˇāĻŖāĻŋāĻāĻāĻžāĻŦā§ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻā§āĻĄā§ āĻāĻ˛ā§ āĻ¯āĻžāĻŦā§ āĻāĻŦāĻ āĻĄā§āĻāĻž āĻāĻ¸āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻĨā§ āĻā§āĻ¯ā§āĻ¯āĻŧāĻžāĻ°ā§ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻž āĻšāĻŦā§āĨ¤
āĻāĻ¤ā§āĻ¸: opennet.ru