ยุคนี้รู้แค่สองภาษาไม่ได้แล้ว ภาษาไทย + ภาษาอังกฤษ เดี๋ยว 555+
ภาษาที่หนึ่งเรียน R ภาษาที่สอง Python ภาษาที่สาม JavaScript 🤓
ถ้าวันนี้แอดเลือกเรียนได้แค่หนึ่งภาษา แอดจะเลือก JavaScript เป็นภาษาหลักที่อยากเขียนให้เก่ง ใช้ได้ทั้งในงาน software development เขียนเว็บ ทำ server ไปจนถึง data science
บทความนี้เราจะมาดูกันว่าทำไม data analyst ควรรู้พื้นฐาน JavaScript ติดตัวไว้บ้าง
Table of Contents
Why Learn JavaScript?
JavaScript คือภาษาที่มีการใช้งานเยอะที่สุดในโลกในปี 2022 อ้างอิงจากรายงานของ Octoverse เพราะ 95% ของเว็บไซต์ในโลกนี้มีการใช้งาน JavaScript รูปแบบใดรูปแบบหนึ่งอยู่นั่นเอง
📝 ถึงแม้ว่าชื่อจะคล้ายกันแต่ JavaScript (JS) ไม่ได้เป็นอะไรกับ Java นะครับ ยั๊ง 555+

JS ถูกพัฒนาโดย Brendan Eich ที่ Netscape ในปี 1995 เค้าใช้เวลาแค่ 10 วันในการสร้าง JS ขึ้นมา from scratch สมัยนั้นเว็บเพิ่งเริ่มบูม โลกอยู่ในยุค the great wars of web browser
ถ้า HTML, CSS ใช้วางของบนเว็บ และตกแต่งให้สวยงาม JS คือภาษาที่เพิ่มลูกเล่น สร้าง interactive + dynamic web contents และ applications ทำให้เว็บเรามีชีวิต
นอกจากงาน software ทุกวันนี้ developers เริ่มใช้ JS ในงาน data science เช่นกัน
Google มี library TensorFlow.js ไว้สร้างโมเดล machine learning และ deep learning ด้วยภาษา JS รันโค้ดผ่าน web browser ได้เลย แอดลองแล้ว ง่ายพอๆกับ Python เลย 555+
ส่วนตัวแอดคิดว่า JavaScript เป็นภาษาที่เริ่มเขียนง่ายมาก ถ้าใครเคยเขียน R มาก่อนแล้ว (ถึงจะมาจากคนละโลก) แต่ syntax หลายอย่างมีความคล้ายกันพอสมควร
เราสามารถเขียน JS ได้บน web browser ของเราเลย ถ้าใครใช้ Google Chrome หรือ Microsoft Edge คลิกขวาเลือก inspect ไปที่หน้าต่าง console ก็เริ่มเขียนโค้ดได้ทันที

สรุปคือเรียนภาษานี้ไว้ได้ใช้แน่นอน You can’t go wrong with JavaScript! ทำได้ทั้งงาน software และ data science จบในภาษาเดียว แถมพวก cloud ต่างๆก็รองรับ JS ดีมาก
Basic Building Blocks
เวลาเราเรียนภาษาใหม่ๆจะมีอยู่ 5 concepts ที่จะช่วยให้เราเข้าใจภาษานั้นได้เร็วขึ้นมาก R Python JavaScript มี concepts นี้เหมือนกัน ต่างกันที่วิธีการเขียนหรือ syntax นิดหน่อย
- Variable
- Data type
- Data structure
- Control flow
- Function
บทความนี้แอดเขียน JavaScript บน Replit.com เป็น online text editor ใช้งานฟรี แอดชอบ replit เพราะมันใช้งานง่ายมาก เขียนโค้ดได้มากกว่า 50 ภาษาผ่าน web browser
สมัคร free account คลิกปุ่ม Create a Repl เลือก Node.js
แล้วกดสร้างได้เลย

พอเข้ามาที่ text editor ได้แล้ว ให้เราเขียนโค้ดในไฟล์ index.js กดปุ่ม Run
ผลลัพธ์จะแสดงในหน้าต่าง console ทางด้านขวา ตัวอย่างนี้แอดใช้ console.log() print สองข้อความใน console

📝 แอดเคยเขียนแนะนำการใช้งาน Replit เบื้องต้นไว้แล้ว ลองอ่านเพิ่มเติมได้นะครับ
JavaScript 101
บทความ 101 มาเรียน basics ที่เราต้องรู้กันก่อน เริ่มจาก variable, function และ JSON
Variable
Developers ใช้ตัวแปรเก็บค่าบางอย่างที่ต้องการ reusable ใช้ซ้ำในโปรแกรม เป็น key concept ที่มีเหมือนกันทุกภาษา
วิธีการประกาศตัวแปรใน JavaScript จะใช้ keyword let
หรือ const
ความแตกต่างคือถ้าใช้ let เราสามารถ re-assign ค่าใหม่ที่ตัวแปรนี้ได้
// create new variables
let myName = "toy";
const school = "DataRockie";
// print values
console.log(myName)
console.log(school)
มาลอง re-assign ค่าที่ตัวแปร myName
และ school
// reassign new values
myName = "kasidis";
school = "DataRockie School";
ตัวอย่าง TypeError
เวลาที่เราพยายามจะ reassign ค่าตัวแปร const

📝 เราใช้ //
เพื่อเขียน single line comment ใน JavaScript code
Function
หน้าที่ของ function คือการเปลี่ยน input เป็น output ที่เราต้องการ
JavaScript ใช้ keyword function
เพื่อประกาศฟังก์ชันใหม่ ด้านล่างเป็น standard template ในการเขียน user defined function แบบง่ายๆ
// create a new function
function hello() {
console.log("Hello world");
}
// call a function
hello()
Function จะมีหรือไม่มี input ก็ได้ ตัวอย่างนี้แอดเขียน sum()
รับ inputs สองตัวคือ x, y
function sum(x, y) {
return x + y;
}
เขียน function เสร็จแล้ว อย่าลืมเรียกใช้ function นั้นๆด้วยนะครับ เช่น
let result = sum(10, 15);
console.log(result); // 25
📝 Function จะเขียนง่ายๆ 1-2 บรรทัดหรือจะซับซ้อนแบบ code 1000 บรรทัดก็ได้ ขึ้นอยู่กับ scope ของ task นั้นๆ เราสามารถเขียน control flow และใช้ตัวแปรภายใน function ได้เช่นกัน
JSON
JSON ย่อมาจาก JavaScript Object Notation เว็บไซต์ W3schools เรียก JSON ว่า “lightweight data interchange format” เป็น data format ที่ data analyst เราทำงานด้วยบ่อยๆรองจาก csv file และ sql database
JSON จะเขียนคล้ายๆกับ JavaScript Object ใช้ concept แบบ key-value pair
{
"firstname": "John",
"lastname": "Doe",
"city": "London",
"age": 25
}
Developers เขียน API เพื่อรับส่งข้อมูลแบบ JSON กันแทบทุกวันนี้ จะเขียน code ภาษาอะไรก็เข้าใจได้เพราะ JSON มีฟีเจอร์เป็น language independent เข้าใจง่าย อธิบายจบในตัวมันเอง
JSON ได้รับความนิยมอย่างล้มหลาม จน developers ต้องพัฒนา database ที่ใช้เก็บข้อมูลประเภทนี้โดยเฉพาะ โดยรวมจะเรียกว่า Document-Oriented Database เช่น MongoDB, CosmosDB, Amazon DocumentDB เป็นต้น
📝 จริงๆ MongoDB เก็บข้อมูลแบบ BSON หรือ binary JSON ที่ efficient กว่า JSON ปกตินิดหน่อย รองรับ data types ได้หลายแบบ มี data model ที่ยืดหยุ่นกว่า SQL relational databases
Free Resources
สำหรับเพื่อนๆที่อยากศึกษา JavaScript เพิ่มเติม ลองดู free resources ด้านล่างได้นะครับ หนังสือ Eloquent JavaScript (3rd edition) อ่านฟรี รันโค้ดฟรีออนไลน์ ฝึกเขียนตามได้สบายๆ
ส่วนบทความ 102 แอดจะมารีวิว data types และ data structures ที่สำคัญในภาษา JavaScript ให้อ่านกัน รอติดตามได้เร็วๆนี้นะครับ
Free Newsletter ใหม่ของเพจเรา subscribe ฟรีที่ ❤️ Humble Guide 💛 Duck Philosophy