Explicação de atribuição de variável JavaScript OR (||)

Dado este trecho de 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

Alguém pode me explicar como é chamada essa técnica (meu melhor palpite está no título desta pergunta!)? E como / por que funciona exatamente?

Meu entendimento é que variávelf será atribuído o valor mais próximo (da esquerda para a direita) da primeira variável que tem um valor que não é nulo ou indefinido, mas não consegui encontrar muito material de referência sobre essa técnica e a vi usar muito .

Além disso, essa técnica é específica para JavaScript? Eu sei que fazer algo semelhante em PHP resultaria emf tendo um verdadeiro valor booleano, em vez do valor ded em si.