JavaScript'te Üst Düzey İşlevleri Anlamak
JavaScript, çok çeşitli özellikler ve yetenekler sunan güçlü bir programlama dilidir. JavaScript'in en önemli ve çok yönlü özelliklerinden biri Yüksek Dereceli İşlevlerdir. Bu işlevler, bir veya daha fazla işlevi bağımsız değişken olarak alır ve/veya sonucu olarak bir işlev döndürür, bu da büyük ölçüde esneklik ve soyutlama sağlar.
Üst Düzey İşlev nedir?
Yüksek Dereceli İşlev, bir veya daha fazla işlevi bağımsız değişken olarak alan ve/veya sonucu olarak bir işlev döndüren bir işlevdir. Kendi özel setTimeout yöntemimizi oluşturalım mySetTimeout:
function mySetTimeout(callback, delay) {
setTimeout(callback, delay);
}
mySetTimeoutİşte daha önce oluşturduğumuz nasıl kullanabileceğinize bir örnek :
function sayHello() {
console.log("Hello!");
}
mySetTimeout(sayHello, 1000);
Gerçekçi Bir Senaryoda Üst Düzey İşlevleri Kullanma
Diyelim ki bir e-ticaret sitesi kuruyorsunuz ve kullanıcıya bir ürün listesi göstermek istiyorsunuz. Ürünleri fiyat ve kategori gibi belirli kriterlere göre filtrelemek istiyorsunuz. Ürünleri filtrelemek için Yüksek Dereceli bir işlev kullanabilirsiniz.
const products = [
{ name: 'Product 1', price: 10, category: 'Electronics' },
{ name: 'Product 2', price: 20, category: 'Fashion' },
{ name: 'Product 3', price: 30, category: 'Electronics' },
{ name: 'Product 4', price: 40, category: 'Fashion' },
{ name: 'Product 5', price: 50, category: 'Electronics' },
];
const filterBy = (property, value) => (product) => product[property] === value;
const filteredProducts = products.filter(filterBy('category', 'Electronics'));
console.log(filteredProducts);
Ayrıca, birden çok ölçüte göre filtrelemek için birden çok filtreyi birbirine zincirleyebilirsiniz, örneğin:
const filteredProducts =
products
.filter(filterBy('category', 'Electronics'))
.filter(filterBy('price', 30));
console.log(filteredProducts);
Çözüm
Bu gönderide, Yüksek Dereceli Fonksiyonların temel kavramını tartıştık ve bunların gerçekçi bir senaryoda nasıl kullanılabileceğine dair bir örnek sağladık. Ürünleri birden çok kritere göre filtrelemek için Yüksek Dereceli işlevlerin nasıl kullanılabileceğini de vurguladık.
Okuduğunuz için teşekkürler!
Bununla, Üst Düzey işlevleri ve bunların JavaScript'teki kullanım durumlarını daha iyi anladığınızı umuyorum.

![Bağlantılı Liste Nedir? [Bölüm 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































