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

  • jocc talking shit

    jocc talking

    6 NİSAN 2007
  • MaximumPCMag

    MaximumPCMag

    23 Temmuz 2010
  • rekjavicxxx

    rekjavicxxx

    28 EKİM 2007