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

  • Erica Griffin

    Erica Griffi

    8 HAZİRAN 2009
  • ghosti66

    ghosti66

    27 AĞUSTOS 2006
  • SRI International

    SRI Internat

    30 NİSAN 2008