هو سلوك في JS حيث يتم رفع تعريف المتغيرات والدوال إلى أعلى النطاق قبل التنفيذ.
قد يسبب أخطاء غير متوقعة إذا لم يفهمه المبرمج جيداً.