С# 6.0 только что был выпущен и имеет новую приятную небольшую функцию, которую я бы очень хотел использовать в JavaScript. Они называются Нулевыми условными операторами. Они используют синтаксис ?. или ?[].
Что это значит, по сути, вы можете проверить, что у вас нет объекта null, прежде чем пытаться получить доступ к свойству. Если объект null, тогда вы получите null как результат доступа к вашему ресурсу.
int? length = customers?.Length;
Итак, здесь int может быть нулевым, и примет это значение, если customers равно null. Что еще лучше, так это то, что вы можете связать их:
int? length = customers?.orders?.Length;
Я не верю, что мы можем сделать это в JavaScript, но мне интересно, какой самый простой способ сделать что-то подобное. Обычно я считаю, что цепочка if трудно читать:
var length = null;
if(customers && customers.orders) {
length = customers.orders.length;
}