vibecodingthailand
10-Day Underdog ที่ครองโลก
JavaScript เคยถูกหัวเราะเยาะ วันนี้รันอยู่บน browser, server, มือถือ และ desktop ทั่วโลก เราจะพาคุณสร้าง mental model ตั้งแต่ 0 ไม่ต้องจำ syntax
แตะ expression แต่ละใบ ดูผลลัพธ์ที่ dev ทั่วโลกเคยงงมาก่อน
Fun fact: Python, Java, C ก็ให้ 0.30000000000000004 เหมือนกัน ไม่ใช่ JS พังคนเดียว
หลังเรียนจบ คุณจะ...
เขียน JS อ่านได้ ไม่ต้องเดาว่า == กับ === ต่างกันตรงไหน
เข้าใจว่าทำไมแก้ array ใน function แล้ว caller โดนแก้ด้วย
อ่าน async code ของพี่ๆ ในทีมออก พร้อมเขียน async ไม่งง
เริ่มที่นี่
ภาษาที่เกิดใน 10 วันแต่กลายเป็นภาษาที่คนเขียนเยอะที่สุดในโลก รันได้ทุกที่ตั้งแต่เว็บถึงมือถือ และไม่เกี่ยวข้องกับ Java
ทำความรู้จัก
— variables, operators, control flow คือสิ่งที่เขียนทุกไฟล์
ภาษาที่เกิดใน 10 วันแต่กลายเป็นภาษาที่คนเขียนเยอะที่สุดในโลก รันได้ทุกที่ตั้งแต่เว็บถึงมือถือ และไม่เกี่ยวข้องกับ Java
ตัวแปรคือกล่องที่มีชื่อ JS มี let/const/var และ 8 types พร้อม bug 30 ปีของ typeof null
เครื่องหมายพื้นฐาน + - * / กับดักคลาสสิก == vs === กฎ truthy/falsy 6 ตัว และ short-circuit ของ && ||
if/else, ternary, for, while, for...of vs for...in, break/continue, switch พร้อมกับดัก fall-through
ลงลึก
— functions, objects, reference vs value, array methods
function 4 syntaxes (declaration → expression → arrow), parameters/arguments/default/rest, first-class function เป็น value
Array (order, index 0) + Object (key-value, dot/bracket) + nested + destructuring + spread คือ data structure ที่ใช้ทุกที่
mental model สำคัญที่สุดของ JS คือ primitive copy by value ส่วน object copy by reference เหตุผลที่แก้ array ใน function แล้ว caller โดนแก้ด้วย
higher-order function 3 ตัวที่ครอบคลุม 80% ของงาน array chain ต่อกันได้ immutable เปลี่ยน mindset จาก imperative เป็น declarative
ใช้งานจริง
— scope/closure + async ที่เป็นรากของ React และ modern patterns
function/block scope, lexical scope, closure ที่ inner function จำตัวแปร outer ไว้ได้ เป็นรากของ React Hooks และ pattern modern ทั้งหมด
callback → Promise → async/await + Event Loop ที่อธิบายว่าทำไม Promise ชนะ setTimeout(0) เสมอ บทสุดท้ายและเป็น highlight ของ topic