Учитывая этот фрагмент JavaScript...
var a;
var b = null;
var c = undefined;
var d = 4;
var e = 'five';
var f = a || b || c || d || e;
alert(f); // 4
Может кто-нибудь, пожалуйста, объясните мне, что называется этой техникой (моя лучшая догадка заключается в названии этого вопроса!)? И как/почему это работает точно?
Я понимаю, что переменной f
будет присвоено ближайшее значение (слева направо) первой переменной, которая имеет значение, которое не является ни null, ни undefined, но мне не удалось найти много справочных материалов об этой технике и видели, что она много использовала.
Кроме того, этот метод специфичен для JavaScript? Я знаю, что выполнение чего-то подобного в PHP приведет к тому, что f
будет иметь истинное булевское значение, а не значение самого d
.