หน้าแรก
หน้าแรก
ดังที่เราทราบในการประกาศตัวแปรในจาวาสคริปต์ เรามีสองตัวเลือกประกาศด้วย var หรือประกาศด้วยให้ ตอนนี้คำถามคือเมื่อใดควรใช้ var และเมื่อใดควรใช้ ให้ i.e อะไรคือข้อแตกต่างที่สำคัญระหว่างทั้งสองอย่าง ในข้อความต่อไปนี้ เรามาทำความรู้จักกับความแตกต่างที่สำคัญระหว่าง var และ let in javascript ความแตกต่างห
สำเนาลึกของวัตถุจะทำซ้ำทุกวัตถุที่พบในวัตถุที่เราต้องการคัดลอก สำเนาและวัตถุต้นฉบับจะไม่แชร์สิ่งใด ดังนั้นจะเป็นสำเนาของต้นฉบับ วิธีที่ง่ายที่สุดคือการแปลงวัตถุเป็นสตริง JSON และแปลงกลับเป็นวัตถุ JS อย่างไรก็ตาม วิธีนี้ไม่อนุญาตให้คัดลอกวิธีการ ตัวอย่าง let obj = { foo: 1,  
JavaScript ไม่มีฟังก์ชันสลีปดั้งเดิม อย่างไรก็ตาม มีวิธีแก้ปัญหาบางอย่างที่คุณสามารถใช้เพื่อหลีกเลี่ยงข้อจำกัดนี้ วิธีที่ง่ายที่สุดในการทำงานของโหมดสลีปคือการสร้างฟังก์ชันสลีปของคุณเองโดยใช้ setTimeout และ async/await ตัวอย่าง const sleep = milliseconds => new Promise(resolve => setTimeout(res
ไม่รองรับ Enum ใน JavaScript โดยกำเนิด อย่างไรก็ตาม เราสามารถสร้าง Enums โดยใช้ Object.freeze โดยการสร้างวัตถุที่มีคุณสมบัติที่นับได้ทั้งหมด จากนั้นจึงตรึงวัตถุเพื่อไม่ให้เพิ่ม enum ใหม่เข้าไปได้ ตัวอย่าง const Color = { RED: 1, BLUE: 2, GREEN: 3,
ชุดเป็นประเภทข้อมูลนามธรรมที่สามารถเก็บค่าบางอย่าง โดยไม่มีลำดับใด ๆ และไม่มีค่าซ้ำ เป็นการนำแนวคิดทางคณิตศาสตร์ของเซตจำกัดไปใช้ด้วยคอมพิวเตอร์ ไม่เหมือนกับคอลเล็กชันประเภทอื่นๆ ส่วนใหญ่ แทนที่จะดึงองค์ประกอบเฉพาะจากชุด ปกติการทดสอบค่าสำหรับการเป็นสมาชิกในชุด คุณควรใช้ชุด เมื่อใดก็ตามที่คุณต้องการเ
ชุดเป็นประเภทข้อมูลนามธรรมที่สามารถเก็บค่าบางอย่าง โดยไม่มีลำดับใด ๆ และไม่มีค่าซ้ำ เป็นการนำแนวคิดทางคณิตศาสตร์ของเซตจำกัดไปใช้ด้วยคอมพิวเตอร์ ไม่เหมือนกับคอลเล็กชันประเภทอื่นๆ ส่วนใหญ่ แทนที่จะดึงองค์ประกอบเฉพาะจากชุด ปกติการทดสอบค่าสำหรับการเป็นสมาชิกในชุด วิธีสร้างชุดใน js − 1. ใช้ตัวสร้าง Set
Set class ใน JavaScript มีวิธีการที่ชัดเจนในการลบองค์ประกอบทั้งหมดออกจาก set object ที่กำหนด วิธีนี้สามารถใช้ได้ดังนี้ − ตัวอย่าง let mySet = new Set(); mySet.add(1); mySet.add(2); mySet.add(1); mySet.add(3); mySet.add("a"); console.log(mySet) mySet.clear(); console.log(mySet) ผลลัพธ์ Set
คลาส Set ใน JavaScript จัดให้มีวิธีการค้นหาองค์ประกอบในออบเจกต์ชุดที่กำหนด วิธีนี้สามารถใช้ได้ดังนี้ − ตัวอย่าง let mySet = new Set(); mySet.add(1); mySet.add(2); mySet.add(1); mySet.add(3); mySet.add("a"); console.log(mySet) console.log(mySet.has(55)) console.log(mySet.has(""))
คลาส Set ใน JavaScript จัดให้มีวิธีการค้นหาองค์ประกอบในออบเจกต์ชุดที่กำหนด ในกรณีที่คุณต้องการค้นหาวัตถุในชุด คุณต้องระบุการอ้างอิงไปยังวัตถุนั้น ออบเจ็กต์ที่เหมือนกันซึ่งมีที่อยู่หน่วยความจำต่างกันไม่ถือว่าเท่ากัน วิธีนี้สามารถใช้ได้ดังนี้ − ตัวอย่าง let mySet = new Set(); let myObj = {name: "
เพื่อให้เข้าใจวิธีทำให้โค้ดเร็วขึ้นโดยใช้ชุด เราต้องเข้าใจสถานการณ์ที่ต้องใช้ชุดแทนอาร์เรย์ก่อน - เนื่องจากชุดประกอบด้วยองค์ประกอบเฉพาะ จึงง่ายกว่าหากเราทราบล่วงหน้าว่าเราต้องการหลีกเลี่ยงการบันทึกข้อมูลที่ซ้ำกันลงในโครงสร้างของเรา การดำเนินการพื้นฐานของ Set like union(), intersect(),ผลต่าง ()
อักขระเมตา \s ถูกใช้เพื่อค้นหาอักขระช่องว่าง อักขระช่องว่างสามารถ − อักขระเว้นวรรค อักขระแท็บ อักขระขึ้นบรรทัดใหม่ อักขระขึ้นบรรทัดใหม่ อักขระแท็บแนวตั้ง ตัวป้อนแบบฟอร์ม ตัวอย่าง // Not containing any white spaces: console.log(/\s/.test("1")) console.log(/\s/.test("test")) //
อักขระเมตา \W ถูกใช้เพื่อค้นหาอักขระที่ไม่ใช่คำ อักขระคำคืออักขระตั้งแต่ a-z, A-Z, 0-9 รวมทั้งอักขระ _ (ขีดล่าง) ตัวอย่าง // Containing any non word character: console.log(/\W/.test(" ")) console.log(/\W/.test(".!@#")) // Not containing non word characters: console.log(/\W/.test
JavaScript ไม่สนับสนุนการสืบทอดหลายรายการ แต่บางครั้งก็จำเป็นต้องเพิ่มฟังก์ชันการทำงานของ 2 คลาสให้กับอ็อบเจกต์เดียว Mixin เป็นวิธีการเพิ่มคุณสมบัติให้กับวัตถุโดยไม่ต้องใช้การสืบทอด ตัวอย่างเช่น สมมติว่าเรามีคลาสบุคคล และเราต้องการให้ผู้คนสามารถพูดสวัสดีได้ เราสามารถสร้าง sayHiMixin และใช้มันเพื่อท
คลาส JavaScript ที่นำมาใช้ใน ES6 เป็นน้ำตาลเชิงวากยสัมพันธ์เหนือการสืบทอดตามต้นแบบ JavaScript อันที่จริงแล้วชั้นเรียนเป็น หน้าที่พิเศษ คุณสามารถกำหนดคลาสใน JavaScript โดยใช้คีย์เวิร์ดคลาสโดยใช้ไวยากรณ์ต่อไปนี้ - class Person { // Constructor for this class constructor(name)
การปิดคือการรวมกันของฟังก์ชันและสภาพแวดล้อมของคำศัพท์ซึ่งมีการประกาศฟังก์ชันนั้น function outerFunc() { var name = "TutorialsPoint"; // name is a local variable created by outerFunc return function innerFunc() { // innerFunc() is the inner fun
สาเหตุหลักของการรั่วไหลในภาษาที่รวบรวมโดยขยะคือการอ้างอิงที่ไม่ต้องการ เพื่อให้เข้าใจถึงการรั่วไหลของหน่วยความจำ ให้เรามาดูกันว่าหน่วยความจำ (การรวบรวมขยะ) ทำงานอย่างไร อัลกอริทึมการทำเครื่องหมายและกวาด −อัลกอริธึมนี้ลดคำจำกัดความของ วัตถุไม่จำเป็นอีกต่อไป เป็น วัตถุที่ไม่สามารถเข้าถึงได้ อัลกอริธึ
การอ้างอิงแบบวงกลมจะเกิดขึ้นหากวัตถุสองชิ้นที่แยกจากกันผ่านการอ้างอิงถึงกัน ในเบราว์เซอร์รุ่นเก่า การอ้างอิงแบบวงกลมเป็นสาเหตุของหน่วยความจำรั่ว ด้วยการปรับปรุงอัลกอริธึมการรวบรวมขยะ ซึ่งขณะนี้สามารถจัดการกับวงจรและการพึ่งพาแบบวนรอบได้ดี จึงไม่เป็นปัญหาอีกต่อไป อย่างไรก็ตาม จากมุมมองของการออกแบบล้
Chaining Methods หรือที่รู้จักในชื่อ Cascading หมายถึงการเรียกใช้เมธอดหนึ่งบนอ็อบเจ็กต์ซ้ำๆ ในบรรทัดเดียวของโค้ดต่อเนื่องกัน ให้เรามาดูตัวอย่างที่ method chaining สามารถช่วยเราหลีกเลี่ยงการทำซ้ำได้ ตัวอย่าง ยกตัวอย่างรถคลาสต่อไปนี้ - class Car { constructor() { thi
ในการสืบทอดหลายรายการ ออบเจ็กต์สามารถสืบทอดคุณสมบัติและค่าจากออบเจ็กต์หลักที่ไม่เกี่ยวข้อง ภาษาเชิงวัตถุบางภาษาอนุญาตให้มีการสืบทอดหลายรายการ JavaScript ไม่รองรับการสืบทอดหลายรายการ การสืบทอดค่าคุณสมบัติเกิดขึ้นในขณะใช้งานโดย JavaScript ค้นหาเชนต้นแบบของอ็อบเจ็กต์เพื่อค้นหาค่า เนื่องจากทุกอ็อบเจ็กต
อ็อบเจ็กต์ Promise แสดงถึงความสมบูรณ์ในที่สุด (หรือความล้มเหลว) ของการดำเนินการแบบอะซิงโครนัสและค่าผลลัพธ์ ฟังก์ชัน Async กำลังรอและตัวดำเนินการทำงานตามสัญญา ฟังก์ชัน Async/await ช่วยให้เราเขียนโค้ดที่ดูซิงโครนัสได้อย่างสมบูรณ์ในขณะที่ทำงานแบบ async อยู่เบื้องหลัง ตัวอย่างเช่น สมมติว่าเรามีฟังก์ชั