ให้และ const

let และ const เป็นสองคุณสมบัติใหม่ใน ES6 ไวยากรณ์เหล่านี้ใช้สำหรับการประกาศตัวแปร

Let ใช้สำหรับการประกาศตัวแปรที่ไม่แน่นอน ในตัวอย่างด้านล่าง ตัวแปรชื่อ 'ชื่อ' นั้นไม่แน่นอน นั่นหมายความว่าเราสามารถเปลี่ยนค่าของมันได้ในภายหลัง

let name = 'Tanvir';
name = 'Tanvir Rahman';
console.log(name)

const ใช้สำหรับการประกาศตัวแปรที่ไม่เปลี่ยนรูป นั่นหมายความว่าเราไม่สามารถเปลี่ยนค่าได้ในภายหลังเมื่อ กำหนดหรือ ประกาศ

const FAVOURITE_LANGUAGE= 'JavaScript';
FAVOURITE_LANGUAGE = 'abc';
console.log(FAVOURITE_LANGUAGE);

หากเรารันตัวอย่างนี้ เราจะได้รับข้อผิดพลาดทางไวยากรณ์

ความแตกต่างระหว่าง var, let/const

ความแตกต่างที่สำคัญที่สุดอย่างหนึ่งระหว่าง var และ let/const คือ varคือ การกำหนดขอบเขตฟังก์ชัน และ let/const คือ การกำหนดขอบเขตบล็อก มันหมายความว่าอะไร?

function test1() {
  // Inside Function scope
  if(true) {
    // Block scope starts
    let greeting = 'Hello';
    // Block scope ends
  }
  //Inside Function scope
  console.log(greeting);
}
test1();

หากเราเรียกใช้ฟังก์ชันนี้ เราจะได้รับข้อผิดพลาดในการอ้างอิง แต่ถ้าเราเรียกใช้ตัวอย่างเดียวกันกับคำหลัก var เราก็จะได้ผลลัพธ์ที่ต้องการ

เหตุผลก็คือให้เข้าถึงได้เฉพาะภายใน ขอบเขตบล็อกของตัวเองและที่ซ้อนกัน ในทางกลับกัน var สามารถเข้าถึงได้ ทุกที่ภายในฟังก์ชัน

ทั้งหมดนี้คือทั้งหมดสำหรับวันนี้ ขอบคุณ.