ความแตกต่างของการประกาศฟังก์ชัน

วิธีการประกาศฟังก์ชันทั้งสองแบบนั้นเทียบเท่ากัน แต่มีความแตกต่างที่สำคัญ: ฟังก์ชันที่ประกาศ เป็น Function Declaration จะสามารถใช้งานได้ แม้ว่าจะเรียกใช้มันก่อนที่ฟังก์ชันจะถูกประกาศ

ดูตัวอย่าง:

javascript// เรียกใช้ฟังก์ชันก่อนการประกาศ:
func(); // จะแสดง '!'

function func() {
  console.log('!');
}

ส่วนนิพจน์ฟังก์ชันจะถูกสร้างขึ้นในขณะที่ โค้ดทำงานและไม่สามารถเรียกใช้จากข้างบนได้ ดังนั้น โค้ดแบบนี้จะเกิดข้อผิดพลาด:

javascriptfunc(); // ข้อผิดพลาด ฟังก์ชันนี้ยังไม่มี!

let func = function() {
  console.log('!');
};
Задание 1

สร้างฟังก์ชันในรูปแบบ Function Declaration ตรวจสอบว่าสามารถเรียกใช้ฟังก์ชันนี้ได้ก่อน ตำแหน่งที่ประกาศ

Задание 2

สร้างฟังก์ชันในรูปแบบ Function Expression ตรวจสอบว่าฟังก์ชันนี้จะไม่สามารถเรียกใช้ได้ก่อน ตำแหน่งที่ประกาศ