JavaScript-də funksiya növünü necə yoxlamaq olar
Aşağıdakı tapşırıqlarda siz verilmiş funksiyanın Function Declaration və ya Function Expression olduğunu müəyyən etməli olacaqsınız.
Sadə hallarda bunu vizual olaraq etmək çətin deyil. Amma bunu düzgün etdiyinizi necə yoxlamaq olar? Function Declaration və Function Expression arasındakı fərqdən istifadə edin: birincilər öz tərifindən əvvəl çağırıla bilər, ikincilər isə - bilməz.
Tutaq ki, bizim belə bir funksiyamız var:
let test = function() {
console.log('!');
}
Bu funksiyaya onun tərifindən əvvəl müraciət edək:
test(); // konsolda xəta verəcək, deməli Function Expression
let test = function() {
console.log('!');
}
Budur başqa bir nümunə:
func(); // '!' çap edəcək, deməli Function Declaration
function func() {
console.log('!');
}
Funksiyamızın qarşısına artı işarəsi qoyaq:
func(); // konsolda xəta verəcək, deməli Function Expression
+function func() {
console.log('!');
}
Yuxarıdakı funksiya Function Expression olduğundan və heç bir dəyişənə təyin edilmədiyindən, onu heç cür çağırmaq olmaz, çünki func adı ilə ona müraciət etmək mümkün olmayacaq.
Təqdim olunan funksiyanın Function Declaration yoxsa Function Expression olduğunu müəyyən edin:
let test = function func() {
console.log('!');
}
Təqdim olunan funksiyanın Function Declaration yoxsa Function Expression olduğunu müəyyən edin:
console.log(
function func() {
console.log('!');
}
);
Təqdim olunan funksiyanın Function Declaration yoxsa Function Expression olduğunu müəyyən edin:
+function func() {
console.log('!');
}
Təqdim olunan funksiyanın Function Declaration yoxsa Function Expression olduğunu müəyyən edin:
function func() {
console.log('!');
}