SORU
1 Temmuz 2011, Cuma


CoffeeScript olarak işlev bildirimi

CoffeeScript, ben eğer bir fonksiyon kullanarak tanımlayın fark ettim:

a = (c) -> c=1

Tek alabilirimifade fonksiyonu:

var a;
a = function(c) {
    return c = 1;
};

Ama, şahsen ben sık sık kullanınbildirim fonksiyonuörneğin:

function a(c) {
    return c = 1;
}

İlk form kullanmak istiyorum, ama eğer CoffeeScript bir işlev bildirimi üreten bir yolu varsa merak ediyorum. Eğer bu şekilde ise orada hayır, bu önlemek CoffeeScript neden bilmek istiyorum. JSLint ilanı için hata, işlev kapsamı başında ilan edilir sürece holler olacağını sanmıyorum.

CEVAP
1 Temmuz 2011, Cuma


CoffeeScript işlevi bildirimleri kullanır ("fonksiyonlar" adlı bir yerde: class tanımlar. aka Örneğin,

class Foo

derler

var Foo;
Foo = (function() {
  function Foo() {}
  return Foo;
})();

Nedeni CoffeeScript işlevi bildirimleri başka bir yerde, FAQ göre kullanmıyor:

Bunun için Microsoft suçlu. Mantıklı bir isim, ama IE sürümleri ve aşağı 8 verilmiştir alınmış olabilir aslında her işlev isimli işlevi, bir gazetecinin, " bir ifade olarak değerlendirildiği ölçüm sorunları var. Daha fazla bilgi için this bkz.

Kısacası: fonksiyonu tanımlamalar dikkatsizce IE (pre-9) ve diğer JS ortamları arasında tutarsızlıklara yol açabilir, CoffeeScript onlardan kaçınır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Apple

    Apple

    22 HAZİRAN 2005
  • Michael Neal

    Michael Neal

    2 Mayıs 2009
  • MrMimoB

    MrMimoB

    11 NİSAN 2011