Middle
FunctionExpression va FunctionDeclaration nima? Ularning asosiy farqi nima?
sobes.tech AI
AIdan javob
Funksiya e'lon qilish — bu function kalit so'zi va funksiya nomi yordamida e'lon qilish, masalan:
function greet() {
console.log('Salom');
}
FunctionExpression — bu ifoda sifatida yaratilgan va nomli yoki nomsiz bo'lishi mumkin bo'lgan funksiya, masalan:
const greet = function() {
console.log('Salom');
};
Asosiy farq — bu hoisting:
- FunctionDeclaration butunlay ko'tariladi, ya'ni uni kodda e'lon qilishdan oldin chaqirish mumkin.
- FunctionExpression esa o'zgaruvchi sifatida ko'tariladi, lekin funksiyasi faqat tayinlash vaqtida initsializatsiya qilinadi, shuning uchun uni tayinlashdan oldin chaqirib bo'lmaydi.
Misol:
sayHi(); // Ishlaydi
function sayHi() {
console.log('Salom');
}
sayHello(); // Xato: sayHello funksiyaga teng emas
const sayHello = function() {
console.log('Salom');
};