รันโค้ด JavaScript/Node.js ออนไลน์

เขียน, รัน, และทดสอบโค้ด JavaScript ได้ทันทีด้วยเครื่องมือรัน JavaScript/Node.js ออนไลน์ของเรา ไม่ต้องติดตั้งหรือเซ็ตอัพอะไรเลย — แค่เขียนและรัน JS ในเบราว์เซอร์ของคุณ ใช้พลังของ Node.js.

💡 คู่มือพื้นฐาน Node.js สำหรับผู้เริ่มต้น

1. การประกาศตัวแปรและค่าคงที่

ใช้ let หรือ const สำหรับตัวแปรที่มีขอบเขตบล็อก const ใช้สำหรับค่าคงที่

let x = 10;
const PI = 3.14;
let name = "Alice";
let isActive = true;

2. เงื่อนไข (if / switch)

ใช้ if, else if, else หรือ switch สำหรับการควบคุมการไหล

let x = 2;
if (x === 1) {
  console.log("One");
} else if (x === 2) {
  console.log("Two");
} else {
  console.log("Other");
}

switch (x) {
  case 1:
    console.log("One");
    break;
  case 2:
    console.log("Two");
    break;
  default:
    console.log("Other");
}

3. ลูป

ใช้ for, while, และ forEach เพื่อวนซ้ำข้อมูล

for (let i = 0; i < 3; i++) {
  console.log(i);
}

let n = 3;
while (n > 0) {
  console.log(n);
  n--;
}

4. อาเรย์

ใช้อาเรย์เพื่อเก็บรายการที่มีลำดับ เข้าถึงด้วยดัชนี

let fruits = ["apple", "banana", "cherry"];
console.log(fruits[0]);
console.log(fruits.length);

5. การจัดการอาเรย์

ใช้เมธอดเช่น push, pop, slice, และ reverse

fruits.push("kiwi");
fruits.pop();
console.log(fruits.slice(0, 2));
console.log(fruits.reverse());

let squares = [1, 2, 3, 4, 5].map(x => x * x);
console.log(squares);

6. การรับ/ส่งข้อมูลทางคอนโซล

ใช้ console.log สำหรับการส่งออกและโมดูล readline สำหรับการรับข้อมูล

const readline = require('readline');

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout
});

rl.question("What's your name? ", name => {
  console.log(`Hello, ${name}`);
  rl.close();
});

7. ฟังก์ชัน

ฟังก์ชันสามารถประกาศหรือแสดงออกได้ ฟังก์ชันลูกศรมักใช้ใน JavaScript สมัยใหม่

function greet(name) {
  return `Hello, ${name}`;
}

const add = (a, b) => a + b;

console.log(greet("Alice"));
console.log(add(2, 3));

8. ออบเจ็กต์ (แผนที่)

ออบเจ็กต์เก็บคู่คีย์-ค่า คล้ายกับดิกชันนารีหรือแผนที่

let person = { name: "Bob", age: 25 };
console.log(person.name);
console.log(person["age"]);

// ES6 Map
const map = new Map();
map.set("a", 1);
console.log(map.get("a"));

9. การจัดการข้อยกเว้น

ใช้ try, catch, และ finally เพื่อจัดการข้อผิดพลาดอย่างปลอดภัย

try {
  throw new Error("Something went wrong");
} catch (e) {
  console.log(e.message);
} finally {
  console.log("Cleanup if needed");
}

10. การรับ/ส่งข้อมูลไฟล์

ใช้โมดูล fs ของ Node.js เพื่ออ่านและเขียนไฟล์

const fs = require("fs");

fs.writeFileSync("test.txt", "Hello File");
const data = fs.readFileSync("test.txt", "utf8");
console.log(data);

11. การจัดการสตริง

ใช้เมธอดเช่น trim(), toUpperCase(), replace(), และ split()

let text = "  Hello World  ";
console.log(text.trim());
console.log(text.toUpperCase());
console.log(text.replace("Hello", "Hi"));
console.log(text.split(" "));

12. คลาสและออบเจ็กต์

ES6+ รองรับ OOP ด้วยไวยากรณ์ class

class Person {
  constructor(name) {
    this.name = name;
  }
  greet() {
    return `Hi, I'm ${this.name}`;
  }
}

const p = new Person("Alice");
console.log(p.greet());

13. การอ้างอิง

ออบเจ็กต์และอาเรย์ใน JavaScript ถูกส่งผ่านโดยการอ้างอิง

function update(arr) {
  arr.push("changed");
}

let data = ["original"];
update(data);
console.log(data);  // ["original", "changed"]