В javascript У меня много кода, подобного этому.Оператор javascript ignore-if-null?
if (ctrl && ctrl.main && ctrl.main.user) {
SetTheme(ctrl.main.user.theme);
}
, который досадно длинный. На других языках вы можете просто
SetTheme(ctrl?.main?.user?.theme);
Есть ли способ сделать это в javascript?
Я попытался,
function safeGet(a,b) { return a ? a[b] : null; }
и
SetTheme(safeGet(safeGet(safeGet(ctrl, 'main'), 'user'), 'theme'));
Но это не очень читаемым.
Логическое И оператор '' && является лучшим выбором в JavaScript. Во всяком случае, это больше похоже на рассказ о JS для меня, чем вопрос. – Timo
да, извините. переформулированный как менее простенький –
@Timo Он просил решения - не только разглагольствования – hack3rfx