Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript
JavaScript
  1. ความแตกต่างระหว่าง var และ let ใน JavaScript

    ในการประกาศตัวแปรใน JavaScript มี 2 ตัวเลือก: var หรือ let ความแตกต่างหลักคือScope ของตัวแปรที่ประกาศด้วย let จำกัดอยู่ใน block ที่ประกาศ ในขณะที่ var มี global scope var เป็น keyword ที่กำหนดตัวแปรแบบ global ไม่สน block scopeScope ของ let ไม่แค่จำกัดใน block ที่กำหนด แต่ตัวแปร let ยังไม่ถูกเพิ่มเข้

  2. วิธี Deep Clone ออบเจ็กต์ใน JavaScript ที่มีประสิทธิภาพที่สุด

    Deep copy ของออบเจ็กต์จะ duplicate ทุกออบเจ็กต์ที่พบภายในออบเจ็กต์ที่ต้องการ copy copy และ original จะไม่ share อะไรเลย จึงเป็น copy จริงวิธีง่ายที่สุดคือแปลง object เป็น JSON string แล้วแปลงกลับเป็น JS object แต่วิธีนี้ไม่ copy methods ได้ตัวอย่างlet obj = {    foo: 1,    bar: {

  3. JavaScript มี sleep() หรือไม่?

    JavaScript ไม่มี native sleep function แต่มี workarounds วิธีง่ายที่สุดคือสร้าง sleep function เองด้วย setTimeout และ async/awaitตัวอย่างconst sleep = milliseconds => new Promise(resolve => setTimeout(resolve, milliseconds)) // Using callbacks sleep(1000).then(() => console.log(waited 1 sec

  4. Syntax การกำหนด Enums ใน JavaScript

    Enums ไม่ได้รองรับใน JavaScript โดยตรง แต่สามารถสร้าง Enums ด้วย Object.freeze โดยสร้าง object ที่มี enumerable properties แล้ว freeze object ไว้ เพื่อไม่ให้เพิ่ม enum ใหม่ได้ตัวอย่างconst Color = {    RED: 1,    BLUE: 2,    GREEN: 3,    YELLOW: 4 }; Object.fr

  5. JavaScript Sets คืออะไร?

    Set เป็น abstract data type ที่เก็บค่าได้โดยไม่มีลำดับเฉพาะและไม่ซ้ำ เป็น computer implementation ของ mathematical finite set ต่างจาก collection types อื่น ที่แทนการ retrieve element เฉพาะ มักจะ test value สำหรับ membership ใน setควรใช้ Sets เมื่ออยากเก็บ unique elements ใน container ที่ order ไม่สำ

  6. วิธีสร้าง Set ใน JavaScript มีกี่แบบ?

    Set เป็น abstract data type ที่เก็บค่าได้โดยไม่มีลำดับเฉพาะและไม่ซ้ำ เป็น computer implementation ของ mathematical finite set ต่างจาก collection types อื่น ที่แทนการ retrieve element เฉพาะ มักจะ test value สำหรับ membership ใน setวิธีสร้าง Set ใน JS1. ใช้ Empty Set Constructorlet mySet = new Set();

  7. วิธิลบ elements ทั้งหมดออกจาก Set ใน JavaScript

    Class Set ใน JavaScript มีเมธอด clear สำหรับลบ elements ทั้งหมดจาก 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 { 1, 2, 3, a } Set { }สามารถลบ elements ทีละตัวโดย iterate

  8. ค้นหา object key ใน JavaScript Set

    Class Set ใน JavaScript มีเมธอด has สำหรับค้นหา elements ใน set object หากต้องการค้นหา object ใน set ต้องส่ง reference ของ object นั้นไป Identical objects ที่อยู่ memory address ต่างกันไม่ถือว่าเท่ากันตัวอย่างlet mySet = new Set(); let myObj = {name: John} mySet.add(1); mySet.add(3); mySet.add(a); m

  9. ทำให้โค้ดเร็วขึ้นด้วย JavaScript Sets

    เพื่อเข้าใจวิธีทำให้โค้ดเร็วขึ้นด้วย Sets ต้องเข้าใจสถานการณ์ที่ควรใช้ Sets แทน Arraysเนื่องจาก Sets เก็บ unique elements เท่านั้น เหมาะหากรู้ล่วงหน้าอยากหลีกเลี่ยง duplicate dataBasic operations ของ Set เช่น union(), intersect(), difference() implement ได้ง่ายและมีประสิทธิภาพจาก built-in operations

  10. JavaScript RegExp \s Metacharacter

    Metacharacter \s ใช้หา whitespace characterWhitespace character ได้แก่Space characterTab characterCarriage return characterNew line characterVertical tab characterForm feed characterตัวอย่าง// Not containing any white spaces: console.log(/\s/.test(1)) console.log(/\s/.test(test)) // Containing white

  11. JavaScript RegExp \W Metacharacter

    Metacharacter \W ใช้หา non-word characterWord character คือตัวอักษร a-z, A-Z, 0-9 รวมถึง _ (underscore)ตัวอย่าง// Containing any non word character: console.log(/\W/.test( )) console.log(/\W/.test(.!@#)) // Not containing non word characters: console.log(/\W/.test(a)) console.log(/\W/.test(B)) conso

  12. Mixins ใน JavaScript

    JavaScript ไม่รองรับ multiple inheritance แต่บางครั้งต้องเพิ่ม functionality ของ 2 classes ให้ object เดียว Mixin คือวิธีเพิ่ม properties ให้ objects โดยไม่ใช้ inheritanceเช่น มี Person class ต้องการให้คนพูด Hi ได้ สร้าง sayHiMixin และใช้ทำให้ People พูด Hi ได้ตัวอย่างlet sayHiMixin = {    

  13. Class Keyword ใน JavaScript

    JavaScript classes ที่นำมารวมใน ES6 เป็น syntactical sugar over JavaScript prototype-based inheritance Classes จริงๆ แล้วคือ special functions สามารถกำหนด classes ด้วย class keyword ได้class Person {    // Constructor for this class    constructor(name) {       thi

  14. การกำจัด Memory Leaks ใน JavaScript

    สาเหตุหลักของ leaks ในภาษาที่มี garbage collection คือ unwanted references เพื่อเข้าใจ memory leaks มาดู memory freeing (garbage collection) ทำงานยังไงMark-and-sweep algorithm - อัลกอริทึมนี้ลดนิยาม ออบเจ็กต์ไม่จำเป็นแล้ว เป็น ออบเจ็กต์เข้าถึงไม่ได้ สมมติรู้จักชุดออบเจ็กต์ที่เรียกว่า roots ใน JS roo

  15. ตัวอย่าง Circular Reference ใน JavaScript

    Circular reference เกิดขึ้นเมื่อออบเจ็กต์สองตัวส่งอ้างอิงให้กันและกันในเบราว์เซอร์เก่า circular references ก่อให้เกิด memory leaks แต่ด้วยการปรับปรุงอัลกอริทึม Garbage Collection ที่จัดการ cycles และ cyclic dependencies ได้ดีแล้ว จึงไม่ใช่ปัญหาอีกต่อไปอย่างไรก็aczy จากมุมมองการออกแบบ Circular refere

  16. Method Chaining ใน JavaScript

    Chaining Methods หรือ Cascading หมายถึงการเรียกเมธอดต่อเนื่องบนออบเจ็กต์ในบรรทัดเดียว มาดูตัวอย่างที่ช่วยลดการซ้ำตัวอย่างคลาส Car ตัวอย่างclass Car {    constructor() {       this.wheels = 4       this.doors = 4       this.topSpeed = 100  

  17. Multiple Inheritance ใน JavaScript

    ใน multiple inheritance ออบเจ็กต์สามารถสืบทอด properties และ values จาก parent objects ที่ไม่เกี่ยวข้องกัน บางภาษา OOP รองรับ multiple inheritance แต่ JavaScript ไม่รองรับการสืบทอดค่า property เกิดขึ้นที่ runtime โดย JavaScript ค้นหา prototype chain ของออบเจ็กต์เพื่อหาค่า เนื่องจากทุกออบเจ็กต์มี pro

  18. Async/Await Functions ใน JavaScript

    Promise object แทนการเสร็จสมบูรณ์ (หรือล้มเหลว) ของ asynchronous operation และค่าที่ได้ Async/await ทำงานบน promisesAsync/await ช่วยเขียนโค้ดที่ดูเหมือน synchronous ขณะทำ async tasks ด้านหลังเช่น มี async function ที่คืน promise// Promise that resolves to 100 after 2sec function getHundred() {  

Total 5941 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:161/298  20-คอมพิวเตอร์/Page Goto:1 155 156 157 158 159 160 161 162 163 164 165 166 167