/Projects
Node.js
ProjectsCS ChallengeFull-StackNode.js

Node.js: รัน JavaScript นอกเบราว์เซอร์

ใช้ตั้งแต่ Challenge Day 2 · ส่วน N ของ PERN Stack

Node.js ทำให้รัน JavaScript บนเครื่องหรือเซิร์ฟเวอร์ได้ ไม่ต้องมีเบราว์เซอร์ Next.js, Express และเครื่องมือเกือบทุกตัวในคอร์สรันบน Node.js และติดตั้ง library ผ่าน npm

At a glance

ItemDetails
ติดตั้งNode.js เวอร์ชัน LTS จาก nodejs.org
มาพร้อมnpm (ติดตั้ง library) และ npx (รันเครื่องมือโดยไม่ต้องติดตั้ง)
ไฟล์ตั้งค่าpackage.json: ชื่อโปรเจกต์, library ที่ใช้, script
library อยู่ที่node_modules/ (ใหญ่มาก ห้าม push)

Installation

  1. ดาวน์โหลด

    ไปที่ nodejs.org เลือกเวอร์ชัน LTS แล้วติดตั้งตามค่าเริ่มต้น

  2. เปิด Terminal ใหม่

    ปิด Terminal เดิมแล้วเปิดใหม่ เพื่อให้เห็นคำสั่ง node

  3. เช็กเวอร์ชัน

    node -v    # เช่น v22.x
    npm -v
  4. ลองรันไฟล์แรก

    echo 'console.log("Hello from Node")' > hello.js
    node hello.js

npm และ package.json

package.json คือบัตรประจำตัวของโปรเจกต์: บอกว่าใช้ library อะไร และมีคำสั่งอะไรให้รัน

{
  "name": "server",
  "type": "module",
  "scripts": {
    "dev": "nodemon index.js",
    "start": "node index.js"
  },
  "dependencies": {
    "express": "^5.1.0"
  },
  "devDependencies": {
    "nodemon": "^3.1.0"
  }
}
คำสั่งทำอะไร
npm init -yสร้าง package.json ใหม่
npm installติดตั้งทุก library ตาม package.json (หลัง clone repo)
npm install <pkg>เพิ่ม library ใน dependencies
npm install -D <pkg>เพิ่ม library ที่ใช้ตอนพัฒนาเท่านั้น
npm run <script>รัน script เช่น npm run dev
npx <tool>รันเครื่องมือครั้งเดียว เช่น npx create-next-app@latest
node <file>รันไฟล์ JavaScript

Modules: import และ export

แยกโค้ดเป็นหลายไฟล์ แล้วดึงมาใช้ด้วย import (ต้องมี "type": "module" ใน package.json)

// math.js
export function add(a, b) {
  return a + b;
}

// index.js
import { add } from "./math.js";
import express from "express";      // library จาก node_modules

console.log(add(2, 3));             // 5

Environment variables

ค่าลับอย่างรหัสฐานข้อมูลเก็บในไฟล์ .env แล้วอ่านผ่าน process.env

// .env
// DATABASE_URL=postgresql://...

import "dotenv/config";
console.log(process.env.DATABASE_URL);

อย่าลืมใส่ใน .gitignore

node_modules/
.env

ฝึกต่อ

เว็บสำหรับลงมือทำ

วิดีโอเรียนเอง

Next steps

  • Express: เขียน API บน Node.js
  • Next.js: framework หน้าเว็บที่รันบน Node.js
CS ChallengeLast updated Oct 2026