SORU
11 AĞUSTOS 2015, Salı


Olan JavaScript kodu bu satırları eşdeğer?

JavaScript kodu bu dize buldum.

var c = (a.b !== null) ? a.b : null;

Bu değer boş ise boş ise atanır ancak if-else deyimi, bir kısaltma. O değilHer ZAMANeşdeğer

var c = a.b

tüm durumlar - özel durumlar, null da dahil olmak üzere, tanımsız, vb?

Başka bir deyişle, bu satırları (her zaman) eşdeğer mi?

var c = (a.b !== null) ? a.b : null;

-vs

var c = a.b

CEVAP
11 AĞUSTOS 2015, Salı


Hayır, onlarMUTLAKA EŞİT DEĞİLDİRher zaman b ise güncellemeleri değişken bir alıcı. Bu arada da kod için kötü bir uygulamadır

var log = 0;
var a = {
    get b() {
        log  ;
        return log;
    }
}

var c = (a.b !== null) ? a.b : null;
// outputs 2
console.log(c);
var log = 0;
var a = {
    get b() {
        log  ;
        return log;
    }
}

var c = a.b;
// outputs 1
console.log(c);

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • SRI International

    SRI Internat

    30 NİSAN 2008
  • THELIFEOFPRICE

    THELIFEOFPRI

    16 Mart 2011
  • TWiT Netcast Network

    TWiT Netcast

    27 EKİM 2005