C# 6.0 yeni piyasaya sürüldü ve JavaScript'te kullanmaktan hoşlandığım yeni bir küçük özellik var. Onlar Null-conditional operators denir. Bunlar, bir ?.
veya ?[]
sözdizimini kullanır.Boş Koşullu Operatörler
Bunlar, bir nesneye erişmeye çalışmadan önce sahip olduğunuz nesnenin null
olmadığını kontrol etmenize izin verir. Nesne null
ise, mülk erişiminizin sonucu olarak null
alırsınız.
int? length = customers?.Length;
Yani burada
int
boş olabilir ve
customers
, null ise değer alacaktır. Ne daha da iyi zincir olmasıdır şu:
int? length = customers?.orders?.Length;
Biz JavaScript yapabilirsiniz inanmıyorum ama benzer bir şey yapmanın etkileyicisi yolu merak ediyorum. Genellikle güç if
blok okuma zincirleme olacaktır:
var length = null;
if(customers && customers.orders) {
length = customers.orders.length;
}
en bazı JavaScript motorları yeniden yazılmalı! – JNYRanger
İlgili: http://stackoverflow.com/questions/476436/is-there-a-null-coalescing-operator-in-javascript – poke
"Var uzunluk = müşteri && müşteriler.nizanlar && customers.orders.length"; – xanatos