“İşlev döndürme işlevi” deseninin JavaScript'te bir adı var mı?


14

Bu kalıbı JavaScript'te oldukça sık kullanıyorum. İşte bir örnek:

const comments = [
  { text: 'Hello', id: 1 },
  { text: 'World', id: 4 },
];

const byId = id => element => element.id === id;

const comment = comments.find(byId(1));

Bazen, bu model kodumuzu okunabilir ve modüler hale getirebilir. Bu desene ne denir?

Yanıtlar:


20

Bunlara üst düzey işlevler denir.

Üst düzey işlev, başka bir işlevi bağımsız değişken olarak alabilen veya sonuç olarak işlevi döndüren bir işlevdir. - JavaScript'te Üst Düzey İşlevler - M. David Green


Ve sonunda bir kapanışla karşılaşıyorsun.
Thomas Junk

3
JavaScript, tüm işlevlerin birinci sınıf olduğu bir dildir. Yani onları başka bir değer gibi değişkenlerde geçirebilirsiniz. Kapatma, içinde tanımlandığı ekteki "sözcüksel kapsam" a erişimi olan bir işlevdir. Bir nesne yöntemlerinin nesnelerin durum değişkenlerine nasıl erişebileceği gibi çalışır.
candied_orange

3
Bu durumda, 2
arg'ı
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.