Javascript köri - pratik uygulamalar nelerdir?
Henüz tımar grokked ben sanmıyorum. Ne yaptığını ve nasıl yapılacağını anlıyorum. Ben kullanırdım bir durum düşünemiyorum.
Burada javascript (veya ana kütüphaneleri kullanıyor) tımar kullanıyorsunuz? Manipülasyon ya da genel DOM Uygulama Geliştirme örnekleri Hoşgeldiniz.
EDİT: One of the answers animasyon bahseder. Fonksiyonlar"", "fade-in" bir argüman olarak bir parçasını alın ve normalde yüksek iade körili bir işlevi vardır "animasyon işlevi" yerleşik. varsayılan işlevi slideUp gibi Neden bazı varsayılan ayarları ile sadece daha iyi bir işlevi uygulamak daha iyidir?
Oh ve orada kullanmanın herhangi bir dezavantajı var mı?
Şerefe.
EDİT: istediğin Gibi javascript tımar: bazı iyi kaynakları vardır
- http://www.dustindiaz.com/javascript-curry/
- Crockford, Douglas (2008)Javascript: İyi Parçaları
- http://www.svendtofte.com/code/curried_javascript/ (İçine bir sapma bütün bölümü atlayın ML kadar sürer "ML hızlandırılmış kurs" ve yeniden başlar körili JavaScript yazmak için Nasıl"")
- http://blog.morrisjohns.com/javascript_closures_for_dummies
- How do JavaScript closures work?
- http://ejohn.org/blog/partial-functions-in-javascript (Bay her zamanki gibi para Resig)
- http://benalman.com/news/2010/09/partial-application-in-javascript/
Onlar yorum kırpma kadar daha eklerim.
DÜZENLEME:
Cevaplar için teşekkürler.
Genel olarak çok tımar ve kısmi uygulama kolaylık teknikleri vardır.
Eğer sık sık "rafine" bir üst düzey işlevi çağırarak onunla aynı yapılandırma, köri (ya da kullanmak Resig parçalı) üst düzey işlevi oluşturmak için basit, kısa ve öz yardımcı yöntemler.
Şerefe!
CEVAP
İşte interesting AND practical use of currying in JavaScript that uses closures bir:
Dönüştürücü Örnek:
function converter(toUnit, factor, offset, input) {
offset = offset || 0;
return [((offset input)*factor).toFixed(2), toUnit].join(" ");
}
var milesToKm = converter.curry('km',1.60936,undefined);
var poundsToKg = converter.curry('kg',0.45460,undefined);
var farenheitToCelsius = converter.curry('degrees C',0.5556, -32);
milesToKm(10); // returns "16.09 km"
poundsToKg(2.5); // returns "1.14 kg"
farenheitToCelsius(98); // returns "36.67 degrees C"
Javascript bir dizi bildirirken takip ...
Android SQLite için en iyi uygulamalar...
Bir UİWebView içinde Javascript hata a...
En iyi Android AES şifreleme kullanara...
İçinde döngüler JavaScript kapatma – b...