JavaScript'te Arrow Functions, yazdığınız kodun daha okunaklı ve kısa olmasını sağlar. Aynı işlemi yaparken daha az kod yazmanıza olanak tanır ve kodlarınızın daha anlaşılır olmasını sağlar.
JavaScript'te arrow functions, bir fonksiyon tanımlamak için kullanılan function anahtar kelimesi yerine =>
işareti kullanılır. Örneğin, bir fonksiyon tanımlamak için kullanabileceğimiz standart bir yol şöyledir:
function topla(a, b) {
return a + b;
}
Ancak aynı fonksiyonu arrow function ile tanımlamak için şöyle yazabiliriz:
const topla = (a, b) => a + b;
Arrow Functions, genellikle callback fonksiyonları olarak kullanılır. Örneğin, bir dizi içindeki tüm öğelerin bir işlem yapılmasını sağlamak için kullanılabilir. Aşağıdaki örnekte, bir dizi içindeki tüm öğelerin iki ile çarpılmasını sağlar:
let numbers = [1, 2, 3, 4, 5];
let doubledNumbers = numbers.map(function(number) {
return number * 2;
});
console.log(doubledNumbers); // [2, 4, 6, 8, 10]
Bu işlemi arrow function kullanarak daha kısa yazabiliriz:
let numbers = [1, 2, 3, 4, 5];
let doubledNumbers = numbers.map(number => number * 2);
console.log(doubledNumbers); // [2, 4, 6, 8, 10]
Arrow Functions, ayrıca this anahtar kelimesinin kapsamının belirli bir değere bağlı kalmamasını sağlar. Bu, özellikle nesne yönelimli programlama için faydalıdır.
Arrow functions, this anahtar kelimesinin kapsamını belirli bir değere bağlamaz. Örneğin, bir nesnenin metodunda this anahtar kelimesi kullanıldığında, metodun çağrıldığı nesnenin kendisi gösterir. Ancak arrow function içinde this anahtar kelimesi, fonksiyon tanımlandığı kapsamda geçerlidir.
const obj = {
name: 'John',
greet: function() {
setTimeout(function() {
console.log(`Hello, my name is ${this.name}.`);
}, 1000);
}
};
obj.greet(); // "Hello, my name is undefined."
Ancak aynı kodu arrow function ile yazdığımızda:
const obj = {
name: 'John',
greet: function() {
setTimeout(() => {
console.log(`Hello, my name is ${this.name}.`);
}, 1000);
}
};
obj.greet(); // "Hello, my name is John."
Son olarak, Arrow Functions ile yazdığınız kodlar daha okunaklı ve anlaşılır olacaktır. Bu nedenle, JavaScript kod yazarken arrow function kullanmanızı öneririz.