SORU
3 Aralık 2008, ÇARŞAMBA


= var functionName function() {} vs function functionName() {}

Son zamanlarda başkasının JavaScript kodu korumak başladım. Bugs özellikler ekleyerek, sabitleme ve ayrıca kod derli toplu ve daha tutarlı hale getirmek için çalışıyorum.

Bir önceki geliştirici ilan fonksiyonları iki şekilde kullanır ve eğer bunun arkasında bir neden var mı yok anlamıyorum.

İki yolu vardır:

var functionOne = function() {
    // Some code
};
function functionTwo() {
    // Some code
}

Bu iki farklı yöntem kullanma nedenleri nelerdir ve her artıları ve eksileri nelerdir? Diğer eliyle yapılması mümkün olmayan bir yöntemle yapılabilecek bir şey var mı?

CEVAP
3 Aralık 2008, ÇARŞAMBA


Fark functionOne functionTwo-zaman ayrıştırmak için bir komut bloğu için de tanımlanır, ancak çalışma zamanı sırasında tanımlanır. Örneğin:

<script>
  // Error
  functionOne();

  var functionOne = function() {
  };
</script>

<script>
  // No error
  functionTwo();

  function functionTwo() {
  }
</script>

Bu da koşullu olarak ikinci sözdizimini kullanarak: fonksiyonlar tanımlayabilirsiniz

<script>
  if (test) {
     // Error or misbehavior
     function functionThree() { doSomething(); }
  }
</script>

Yukarıda aslında testfunctionThree bağımsız use strict etkin değilse, bu durumda sadece bir hata yükseltir.'nin değeri-tanımlar

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • disneychannel

    disneychanne

    19 ŞUBAT 2006
  • midomansour

    midomansour

    19 EYLÜL 2009
  • pain975

    pain975

    27 NİSAN 2008