⊗jsPmFTDTCh 236 of 505 menu

วิธีการตรวจสอบประเภทฟังก์ชันใน JavaScript

ในโจทย์ด้านล่างนี้ คุณจะต้องกำหนดว่า ฟังก์ชันถูกนิยามเป็น Function Declaration หรือ Function Expression

ในกรณีง่าย ๆ การตรวจสอบด้วยสายตา ไม่ใช่เรื่องยาก แต่จะตรวจสอบได้อย่างไรว่า คุณทำถูกต้อง? ใช้ความแตกต่าง ระหว่าง Function Declaration กับ Function Expression: อย่างแรกสามารถถูกเรียกใช้งานได้ก่อนนิยาม, แต่อย่างหลังทำไม่ได้

สมมติว่าเรามีฟังก์ชันดังนี้:

let test = function() { console.log('!'); }

ลองเรียกใช้ฟังก์ชันนี้ก่อนการนิยาม:

test(); // จะแสดงข้อผิดพลาดในคอนโซล แสดงว่าเป็น Function Expression let test = function() { console.log('!'); }

นี่เป็นอีกตัวอย่างหนึ่ง:

func(); // จะแสดง '!' แสดงว่าเป็น Function Declaration function func() { console.log('!'); }

ลองใส่เครื่องหมายบวกหน้าฟังก์ชันของเรา:

func(); // จะแสดงข้อผิดพลาดในคอนโซล แสดงว่าเป็น Function Expression +function func() { console.log('!'); }

เนื่องจากฟังก์ชันด้านบนเป็น Function Expression และไม่ได้ถูกกำหนดค่าให้กับตัวแปรใด ๆ ดังนั้น จึงไม่มีวิธีเรียกใช้งานมันได้ เพราะชื่อ func นั้น จะไม่สามารถเข้าถึงได้

กำหนดว่า ฟังก์ชันที่แสดงเป็น Function Declaration หรือ Function Expression:

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

กำหนดว่า ฟังก์ชันที่แสดงเป็น Function Declaration หรือ Function Expression:

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

กำหนดว่า ฟังก์ชันที่แสดงเป็น Function Declaration หรือ Function Expression:

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

กำหนดว่า ฟังก์ชันที่แสดงเป็น Function Declaration หรือ Function Expression:

function func() { console.log('!'); }
ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ