รีวิว 3778
ตำแหน่งเซิร์ฟเวอร์
รีวิว 233
ตำแหน่งเซิร์ฟเวอร์
รีวิว 233
ตำแหน่งเซิร์ฟเวอร์
ตำแหน่งเซิร์ฟเวอร์
รีวิว 453
ตำแหน่งเซิร์ฟเวอร์
รีวิว 72
ตำแหน่งเซิร์ฟเวอร์
รีวิว 7
ตำแหน่งเซิร์ฟเวอร์
รีวิว 4
ตำแหน่งเซิร์ฟเวอร์
รีวิว 3
ตำแหน่งเซิร์ฟเวอร์
รีวิว 3
ตำแหน่งเซิร์ฟเวอร์
รีวิว 2
ตำแหน่งเซิร์ฟเวอร์
รีวิว 2
ตำแหน่งเซิร์ฟเวอร์
รีวิว 1
ตำแหน่งเซิร์ฟเวอร์
รีวิว 2
รีวิว 214
ตำแหน่งเซิร์ฟเวอร์
ตำแหน่งเซิร์ฟเวอร์
ตำแหน่งเซิร์ฟเวอร์
ตำแหน่งเซิร์ฟเวอร์
ตำแหน่งเซิร์ฟเวอร์
ตำแหน่งเซิร์ฟเวอร์
ตำแหน่งเซิร์ฟเวอร์
Node.js คือรันไทม์ JavaScript แบบโอเพนซอร์สข้ามแพลตฟอร์มที่ทำงานบนเซิร์ฟเวอร์ นับตั้งแต่เปิดตัวในปี 2009 แพลตฟอร์มนี้ได้รับความนิยมอย่างมากและมีบทบาทสำคัญอย่างมากในด้านการพัฒนาเว็บในปัจจุบัน หากเราพิจารณาจำนวนดาวที่โครงการรวบรวมบน GitHub เป็นตัวบ่งชี้ความนิยม Node.js ซึ่งมีดาวมากกว่า 50,000 ดวงถือเป็นโครงการที่ได้รับความนิยมอย่างมาก
แพลตฟอร์ม Node.js สร้างขึ้นจากเอ็นจิ้น V8 JavaScript ของ Google ซึ่งใช้ในเบราว์เซอร์ Google Chrome แพลตฟอร์มนี้ส่วนใหญ่ใช้ในการสร้างเว็บเซิร์ฟเวอร์ แต่ขอบเขตไม่ จำกัด เพียงแค่นี้
มาดูคุณสมบัติหลักของ Node.js กัน
ความเร็ว
หนึ่งในสถานที่ท่องเที่ยวหลักของ Node.js คือความเร็ว โค้ด JavaScript ที่ดำเนินการใน Node.js อาจเร็วกว่าโค้ดที่เขียนด้วยภาษาคอมไพล์เช่น C หรือ Java ถึงสองเท่าและลำดับขนาดได้เร็วกว่าภาษาที่ตีความเช่น Python หรือ Ruby เหตุผลนี้เป็นสถาปัตยกรรมที่ไม่ปิดกั้นของแพลตฟอร์มและผลลัพธ์ที่เฉพาะเจาะจงขึ้นอยู่กับเกณฑ์มาตรฐานที่ใช้ แต่โดยรวมแล้ว Node.js เป็นแพลตฟอร์มที่เร็วมาก
ความเรียบง่าย
แพลตฟอร์ม Node.js นั้นง่ายต่อการเรียนรู้และใช้งาน ในความเป็นจริงมันง่ายมากโดยเฉพาะเมื่อเทียบกับแพลตฟอร์มเซิร์ฟเวอร์อื่น ๆ
JavaScript
JavaScript ถูกเรียกใช้ในสภาพแวดล้อม Node.js ซึ่งหมายความว่านักพัฒนาฟรอนต์เอนด์หลายล้านคนที่ใช้ JavaScript ในเบราว์เซอร์อยู่แล้วสามารถเขียนโค้ดทั้งฝั่งเซิร์ฟเวอร์และฝั่งไคลเอ็นต์ในภาษาโปรแกรมเดียวกันโดยไม่ต้องเรียนรู้เครื่องมือใหม่ทั้งหมดเพื่อย้ายไปพัฒนาฝั่งเซิร์ฟเวอร์
เบราว์เซอร์และเซิร์ฟเวอร์ใช้แนวคิดภาษาเดียวกัน นอกจากนี้ Node.js ยังสามารถเปลี่ยนไปใช้มาตรฐาน ECMAScript ใหม่ได้อย่างรวดเร็วเนื่องจากมีการใช้งานบนแพลตฟอร์ม
ไม่จำเป็นต้องรอให้ผู้ใช้รีเฟรชเบราว์เซอร์สำหรับสิ่งนี้เนื่องจาก Node.js เป็นสภาพแวดล้อมฝั่งเซิร์ฟเวอร์ที่อยู่ในการควบคุมของนักพัฒนา ด้วยเหตุนี้คุณลักษณะภาษาใหม่จะพร้อมใช้งานเมื่อคุณติดตั้ง Node.js เวอร์ชันที่รองรับ
เครื่องยนต์ V8
หัวใจสำคัญของ Node.js ในบรรดาโซลูชันอื่น ๆ คือเอ็นจิ้น V8 JavaScript แบบโอเพนซอร์สของ Google ซึ่งใช้ใน Google Chrome และเบราว์เซอร์อื่น ๆ ซึ่งหมายความว่า Node.js กำลังใช้ประโยชน์จากวิศวกรหลายพันคนที่ทำให้รันไทม์ JavaScript Chrome รวดเร็วอย่างไม่น่าเชื่อและยังคงทำงานเพื่อปรับปรุง V8
อะซิงโครไนซ์
ในภาษาโปรแกรมแบบดั้งเดิม (C, Java, Python, PHP) คำสั่งทั้งหมดจะถูกบล็อกโดยค่าเริ่มต้นเว้นแต่ผู้พัฒนาจะดูแลอย่างชัดเจนในการเรียกใช้โค้ดแบบอะซิงโครนัส ด้วยเหตุนี้ตัวอย่างเช่นในสภาพแวดล้อมดังกล่าวคุณทำการร้องขอเครือข่ายเพื่อดาวน์โหลดโค้ด JSON การดำเนินการสตรีมที่ส่งคำขอจะถูกระงับจนกว่าจะได้รับและประมวลผลการตอบกลับ
JavaScript ช่วยให้เขียนโค้ดแบบอะซิงโครนัสและไม่บล็อกได้ง่ายขึ้นมากโดยใช้เธรดเดียวการเรียกกลับและแนวทางที่ขับเคลื่อนด้วยเหตุการณ์ในการพัฒนา ทุกครั้งที่เราต้องดำเนินการหนักเราจะส่งการเรียกกลับไปยังกลไกที่เหมาะสมซึ่งจะถูกเรียกทันทีหลังจากเสร็จสิ้นการดำเนินการนี้ เป็นผลให้ไม่จำเป็นต้องรอผลการดำเนินการดังกล่าวเพื่อให้โปรแกรมทำงานต่อไป
กลไกที่คล้ายกันเกิดขึ้นในเบราว์เซอร์ เราไม่สามารถที่จะรอพูดสำหรับAJAXขอให้เสร็จสิ้นโดยไม่สามารถตอบสนองต่อการกระทำของผู้ใช้เช่นการคลิกปุ่ม เพื่อให้ผู้ใช้ทำงานกับหน้าเว็บได้สะดวกทุกอย่างทั้งการดาวน์โหลดข้อมูลจากเครือข่ายและการคลิกปุ่มประมวลผลต้องเกิดขึ้นพร้อมกันแบบเรียลไทม์
หากคุณเคยสร้างตัวจัดการเหตุการณ์การคลิกปุ่มแสดงว่าคุณได้ใช้เทคนิคการเขียนโปรแกรมแบบอะซิงโครนัสแล้ว
กลไกอะซิงโครนัสช่วยให้เซิร์ฟเวอร์ Node.js เดียวสามารถจัดการการเชื่อมต่อหลายพันการเชื่อมต่อได้พร้อมกันโดยไม่ทำให้โปรแกรมเมอร์มีภาระในการจัดการเธรดและงานเรียกใช้โค้ดแบบขนาน สิ่งดังกล่าวมักเป็นที่มาของความผิดพลาด
Node.js จัดเตรียมกลไก I / O พื้นฐานที่ไม่ปิดกั้นให้กับนักพัฒนาและโดยทั่วไปแล้วไลบรารีที่ใช้ในกรอบงาน Node.js จะถูกเขียนโดยใช้กระบวนทัศน์ที่ไม่ปิดกั้นสิ่งนี้ทำให้พฤติกรรมการบล็อกเป็นข้อยกเว้นแทนที่จะเป็นบรรทัดฐาน
เมื่อ Node.js ต้องการดำเนินการ I / O เช่นการโหลดข้อมูลจากเครือข่ายการเข้าถึงฐานข้อมูลหรือระบบไฟล์แทนที่จะบล็อกเธรดหลักเพื่อรอผลลัพธ์ของการดำเนินการดังกล่าว Node.js จะเริ่มต้น ดำเนินการและดำเนินการอย่างอื่นต่อไปจนกว่าจะได้รับผลลัพธ์ของการดำเนินการนี้
ห้องสมุด
ด้วยความง่ายและสะดวกในการทำงานกับตัวจัดการแพ็คเกจสำหรับ Node.js ที่เรียกว่า npm ระบบนิเวศ Node.js จึงเจริญรุ่งเรือง ขณะนี้มีแพ็กเกจโอเพนซอร์สมากกว่าครึ่งล้านในรีจิสทรี npm ที่นักพัฒนา Node.js ทุกคนสามารถใช้ได้อย่างอิสระ
หลังจากตรวจสอบคุณสมบัติหลักบางประการของแพลตฟอร์ม Node.js แล้วเรามาลองใช้งานจริงกัน เริ่มต้นด้วยการติดตั้ง
การติดตั้ง Node.js
Node.js สามารถติดตั้งได้หลายวิธีซึ่งเราจะพูดถึงในอีกสักครู่ ดังนั้นแพคเกจการติดตั้งอย่างเป็นทางการสำหรับแพลตฟอร์มหลักทั้งหมดสามารถพบได้
มีอีกวิธีหนึ่งที่สะดวกมากในการติดตั้ง Node.js นั่นคือการใช้ตัวจัดการแพ็คเกจที่มีให้ในระบบปฏิบัติการ ตัวอย่างเช่นตัวจัดการแพ็คเกจ macOS ซึ่งเป็นมาตรฐานโดยพฤตินัยในด้านนี้เรียกว่า Homebrew
หากคุณมีในระบบของคุณคุณสามารถติดตั้ง Node.js โดยรันคำสั่งนี้บนบรรทัดคำสั่ง:
ชงติดตั้งโหนด
รายชื่อผู้จัดการแพ็คเกจสำหรับระบบปฏิบัติการอื่น ๆ รวมถึง Linux และ Windows มีอยู่ที่นี่
ตัวจัดการเวอร์ชัน Node.js ยอดนิยมคือ nvm เครื่องมือนี้ช่วยให้คุณสามารถสลับระหว่าง Node.js เวอร์ชันต่างๆได้อย่างสะดวกด้วยความช่วยเหลือเช่นติดตั้งและลอง Node.js เวอร์ชันใหม่จากนั้นหากจำเป็นให้เปลี่ยนกลับเป็นเวอร์ชันเก่า Nvm ยังมีประโยชน์ในสถานการณ์ที่คุณต้องทดสอบโค้ดบางอย่างบน Node.js เวอร์ชันเก่า
สำหรับผู้เริ่มต้นใช้งานโปรแกรมติดตั้ง Node.js อย่างเป็นทางการ สำหรับผู้ใช้ macOS ขอแนะนำให้ติดตั้ง Node.js โดยใช้ Homebrew เมื่อคุณติดตั้ง Node.js แล้วก็ถึงเวลาเขียน "Hello World"
แอปพลิเคชัน Node.js แรก
ตัวอย่างที่พบบ่อยที่สุดของแอปพลิเคชัน Node.js แรกคือเว็บเซิร์ฟเวอร์ธรรมดา นี่คือรหัส:
const http = ต้องใช้ ('http')
ชื่อโฮสต์ const = '127.0.0.1'
พอร์ต const = 3000
เซิร์ฟเวอร์ const = http.createServer ((req, res) = & gt; {
res.statusCode = 200
res.setHeader ('ประเภทเนื้อหา', 'ข้อความ / ธรรมดา')
res.end ('สวัสดีชาวโลก \ n')
})
server.listen (พอร์ตชื่อโฮสต์ () = & gt; {
console.log (`เซิร์ฟเวอร์ทำงานที่ http: // $ {hostname}: $ {port} /`)
})
ในการรันโค้ดนี้ให้บันทึกในไฟล์ server.js และรันคำสั่งต่อไปนี้ในเทอร์มินัล:
โหนด server.js
ในการตรวจสอบเซิร์ฟเวอร์ให้เปิดเบราว์เซอร์และป้อนในแถบที่อยู่ http://127.0.0.1:3000 นั่นคือที่อยู่เซิร์ฟเวอร์ที่จะแสดงในคอนโซลหลังจากเปิดตัวสำเร็จ หากทุกอย่างทำงานตามที่ควรจะเป็นหน้าเว็บจะแสดง "Hello World"
ลองดูตัวอย่างนี้
ขั้นแรกให้สังเกตว่าโค้ดมีคำสั่งเพื่อเชื่อมต่อโมดูล HTTP
แพลตฟอร์ม Node.js มีชุดโมดูลมาตรฐานที่ยอดเยี่ยมซึ่งรวมถึงกลไกที่พัฒนามาอย่างดีสำหรับการทำงานกับเครือข่าย
เมธอดอ็อบเจ็กต์ createServer () http สร้างเซิร์ฟเวอร์ HTTP ใหม่และส่งคืน
เซิร์ฟเวอร์ถูกกำหนดค่าให้รับฟังพอร์ตเฉพาะบนโฮสต์เฉพาะ เมื่อเซิร์ฟเวอร์พร้อมระบบจะโทรกลับที่เกี่ยวข้องเพื่อแจ้งให้เราทราบว่าเซิร์ฟเวอร์กำลังทำงานอยู่
เมื่อเซิร์ฟเวอร์ได้รับการร้องขอเหตุการณ์จะถูกเรียกใช้งานที่มีสองวัตถุ อย่างแรกคือคำร้องขอ (req, อ็อบเจ็กต์ http.IncomingMessage) ที่สองคือการตอบสนอง (res, อ็อบเจ็กต์ http.ServerResponse) ซึ่งเป็นกลไกที่สำคัญที่สุดในการจัดการคำขอ HTTP
ขั้นแรกให้ข้อมูลเกี่ยวกับคำขอแก่เรา ในตัวอย่างง่ายๆของเราเราไม่ได้ใช้ข้อมูลนี้ แต่ถ้าจำเป็นโดยใช้ออบเจ็กต์คุณจะสามารถเข้าถึงส่วนหัวของคำขอและข้อมูลที่ส่งผ่านไปได้
สิ่งที่สองเป็นสิ่งจำเป็นในการสร้างและส่งการตอบกลับคำขอ
ในกรณีนี้เราจะตอบกลับคำขอดังต่อไปนี้ ขั้นแรกเราตั้งรหัสสถานะคุณสมบัติเป็นค่า 200 ซึ่งบ่งชี้ว่าการดำเนินการสำเร็จ:
res.statusCode = 200
ต่อไปเราตั้งชื่อเรื่อง Content-Type:
res.setHeader ('ประเภทเนื้อหา', 'ข้อความ / ธรรมดา')
จากนั้นเราจะเตรียมการตอบสนองให้เสร็จสมบูรณ์โดยเพิ่มเนื้อหาเป็นอาร์กิวเมนต์ไปยัง method end ():
res.end ('สวัสดีชาวโลก \ n')
เราได้กล่าวไปแล้วว่าระบบนิเวศที่ทรงพลังได้ก่อตัวขึ้นรอบ ๆ แพลตฟอร์ม Node.js ตอนนี้เรามาพูดถึงเฟรมเวิร์กยอดนิยมและเครื่องมือช่วยเหลือสำหรับ Node.js
Frameworks และ Helper Tools สำหรับ Node.js
Node.js เป็นแพลตฟอร์มระดับต่ำ เพื่อลดความซับซ้อนของการพัฒนาและทำให้ชีวิตของโปรแกรมเมอร์ง่ายขึ้นจึงมีการสร้างไลบรารีจำนวนมาก บางคนก็ได้รับความนิยมอย่างมากเมื่อเวลาผ่านไป นี่คือรายชื่อห้องสมุดเล็ก ๆ ที่ฉันคิดว่าทำได้ดีและคุ้มค่ากับการสำรวจ:
ด่วน: ไลบรารีนี้มีเครื่องมือที่เรียบง่าย แต่ทรงพลังสำหรับนักพัฒนาสำหรับการสร้างเว็บเซิร์ฟเวอร์ กุญแจสู่ความสำเร็จของ Express คือแนวทางที่เรียบง่ายและมุ่งเน้นไปที่กลไกพื้นฐานฝั่งเซิร์ฟเวอร์โดยไม่ต้องพยายามกำหนดวิสัยทัศน์ของสถาปัตยกรรมเซิร์ฟเวอร์แบบ "ครบวงจร"
ดาวตก: เป็นเฟรมเวิร์กแบบฟูลสแต็กที่ทรงพลังซึ่งใช้แนวทางไอโซมอร์ฟิกในการพัฒนาแอปพลิเคชัน JavaScript และใช้โค้ดทั้งบนไคลเอนต์และเซิร์ฟเวอร์ ครั้งหนึ่ง Meteor เป็นเครื่องมือแบบสแตนด์อโลนที่มีทุกสิ่งที่นักพัฒนาต้องการ ตอนนี้ยังรวมเข้ากับไลบรารีส่วนหน้าเช่น React, Vue และ Angular Meteor นอกเหนือจากการพัฒนาเว็บแอปพลิเคชันทั่วไปแล้วยังสามารถใช้ในการพัฒนาอุปกรณ์เคลื่อนที่ได้อีกด้วย
โคอา: เว็บเฟรมเวิร์กนี้สร้างขึ้นโดยทีมงานเดียวกับที่อยู่เบื้องหลัง Express จากประสบการณ์หลายปีกับ Express ได้รับการพัฒนาโดยเน้นที่ความเรียบง่ายและกะทัดรัด โครงการนี้เกิดขึ้นเพื่อแก้ปัญหาการเปลี่ยนแปลงที่สำคัญของ Express ที่ไม่เข้ากันกับกลไกกรอบอื่น ๆ ที่อาจทำให้ชุมชนแตกแยก
Next.js: เฟรมเวิร์กนี้ออกแบบมาเพื่อจัดระเบียบการแสดงผลแอปพลิเคชัน React ทางฝั่งเซิร์ฟเวอร์
ไมโคร: เป็นไลบรารีที่มีน้ำหนักเบามากสำหรับการสร้างไมโครเซอร์วิส HTTP แบบอะซิงโครนัส
Socket.io เป็นไลบรารีสำหรับพัฒนาแอพพลิเคชั่นเครือข่ายแบบเรียลไทม์
ในระบบนิเวศของ Node.js คุณสามารถค้นหาไลบรารีตัวช่วยสำหรับงานเกือบทุกอย่าง อย่างที่คุณสามารถจินตนาการได้ว่าการสร้างระบบนิเวศดังกล่าวต้องใช้เวลานานมาก แพลตฟอร์ม Node.js ปรากฏในปี 2009 ในระหว่างที่มีอยู่มีหลายสิ่งหลายอย่างเกิดขึ้นซึ่งโปรแกรมเมอร์ที่ต้องการเรียนรู้แพลตฟอร์มนี้ควรทราบ
ประวัติโดยย่อของ Node.js
Node.js มีอายุ 9 ปีในปีนี้ แน่นอนว่าไม่มากนักเมื่อคุณเปรียบเทียบอายุนี้กับอายุของ JavaScript ซึ่งมีอายุ 23 ปีแล้วหรืออายุ 25 ปีของเว็บอย่างที่เราทราบกันดีหากคุณนับจากการถือกำเนิดของโมเสก เบราว์เซอร์
9 ปีเป็นช่วงเวลาสั้น ๆ สำหรับเทคโนโลยี แต่ตอนนี้ดูเหมือนว่าแพลตฟอร์ม Node.js จะมีอยู่ตลอดเวลา
ด้วย Node.js จากแพลตฟอร์มเวอร์ชันแรกเมื่ออายุเพียง 2 ปี ถึงอย่างนั้นแม้ว่าจะไม่มีข้อมูลเกี่ยวกับ Node.js มากนัก แต่ก็สามารถรู้สึกได้ว่า Node.js นั้นร้ายแรงมาก
ตอนนี้เรามาพูดถึงเทคโนโลยีที่อยู่เบื้องหลัง Node.js และดูไฟล์การพัฒนาหลักที่เกี่ยวข้องกับแพลตฟอร์มนี้.
ดังนั้น JavaScript จึงเป็นภาษาโปรแกรมที่สร้างขึ้นใน Netscape เป็นภาษาสคริปต์สำหรับจัดการเว็บเพจในเบราว์เซอร์ Netscape Navigator
ธุรกิจส่วนหนึ่งของ Netscape คือการขายเว็บเซิร์ฟเวอร์ซึ่งรวมถึงสภาพแวดล้อมที่เรียกว่า Netscape LiveWire อนุญาตให้คุณสร้างเว็บเพจแบบไดนามิกโดยใช้ JavaScript ฝั่งเซิร์ฟเวอร์
แนวคิดในการใช้ JS สำหรับการพัฒนาฝั่งเซิร์ฟเวอร์นั้นเก่ากว่า Node.js มาก แนวคิดนี้เกือบจะเก่าพอ ๆ กับ JavaScript แต่ในขณะนั้น JS ฝั่งเซิร์ฟเวอร์ไม่เป็นที่นิยม
ปัจจัยสำคัญประการหนึ่งที่ทำให้แพลตฟอร์ม Node.js แพร่หลายและเป็นที่นิยมคือเมื่อแรกปรากฏ ดังนั้นเมื่อไม่กี่ปีก่อนหน้านี้ JavaScript ได้เริ่มถูกพิจารณาว่าเป็นภาษาที่ร้ายแรง สิ่งนี้เกิดขึ้นเนื่องจากแอปพลิเคชัน Web 2.0 เช่น Google Maps หรือ Gmail ซึ่งแสดงให้โลกเห็นถึงพลังของเทคโนโลยีเว็บสมัยใหม่
เนื่องจากสงครามการแข่งขันของเบราว์เซอร์ซึ่งยังคงดำเนินต่อไปจนถึงทุกวันนี้ประสิทธิภาพของเอ็นจิ้น JavaScript เพิ่มขึ้นอย่างมาก ทีมพัฒนาที่อยู่เบื้องหลังเบราว์เซอร์หลักกำลังทำงานทุกวันเพื่อปรับปรุงประสิทธิภาพของโซลูชันของพวกเขาซึ่งส่งผลดีต่อ JavaScript โดยทั่วไป
หนึ่งในเอ็นจิ้นดังกล่าวคือ V8 ที่กล่าวถึงแล้วซึ่งใช้ในเบราว์เซอร์ Chrome และใช้ใน Node.js ถือเป็นหนึ่งในผลลัพธ์ของนักพัฒนาเบราว์เซอร์ที่พยายามหาโค้ด JavaScript ประสิทธิภาพสูง
แน่นอนว่าความนิยมของ Node.js ไม่เพียงขึ้นอยู่กับความบังเอิญที่โชคดีและความจริงที่ว่าแพลตฟอร์มเกิดในเวลาที่เหมาะสม เธอแนะนำโลกให้รู้จักกับแนวทางใหม่ในการพัฒนา JavaScript ฝั่งเซิร์ฟเวอร์ มาดูเหตุการณ์สำคัญในประวัติศาสตร์ของ Node.js
2009
การเกิดขึ้นของ Node.js
สร้างตัวแปร npm แรก
2010
ลักษณะของ Express
การเกิดขึ้นของ Socket.io
2011
รุ่น Npm 1.0
บริษัท ใหญ่ ๆ เช่น LinkedIn และ Uber ได้เริ่มใช้ Node.js
2012
ความนิยมที่เพิ่มขึ้นอย่างรวดเร็วของ Node.js
2013
การเกิดขึ้นของ Ghost ซึ่งเป็นแพลตฟอร์มหลักแรกสำหรับสิ่งพิมพ์โดยใช้ Node.js
Koa ปล่อย
2014
มีการจัดงานละครในปีนี้ โครงการ IO.js ปรากฏขึ้นซึ่งเป็นทางแยกของ Node.js โดยมีวัตถุประสงค์เพื่อแนะนำการสนับสนุน ES6 และเร่งการพัฒนาแพลตฟอร์ม
2015
ก่อตั้งมูลนิธิ Node.js
การรวม IO.js และ Node.js
ใน npm สามารถทำงานกับโมดูลส่วนตัวได้
Yield Node.js 4 (ควรสังเกตว่าเวอร์ชัน 1, 2 และ 3 จากแพลตฟอร์มไม่ได้)
2016
เหตุการณ์หีบห่อด้านซ้าย
การเกิดขึ้นของเส้นด้าย
Node.js 6 รีลีส
2017
Npm เริ่มให้ความสำคัญกับความปลอดภัยมากขึ้น
Node.js 8 รีลีส
การเกิดขึ้นของการสนับสนุน HTTP / 2
V8 ได้รับการยอมรับอย่างเป็นทางการว่าเป็นเอ็นจิ้น JS ที่ออกแบบมาไม่เพียง แต่สำหรับ Chrome เท่านั้น แต่ยังรวมถึงโหนดด้วย
มีการดาวน์โหลด 3 พันล้าน npm ทุกสัปดาห์
2018
Node.js 10 รีลีส
รองรับโมดูล ES
การสนับสนุน mjs ทดลอง