Encontré una respuesta para la pregunta Two Sum en leetcode; la solución utilizada || entre obj[delta] || objeto[delta]. ¿Alguien sabe por qué lo usaron de esta manera y qué significa?
for(let i = 0; i< nums.length; i++) { let cur = nums[i]; let delta = target - cur; if(obj[delta] || obj[delta] === 0) { return [obj[delta], i]; } obj[cur] = i; }0 es falso en javascript, por lo que permiten que el valor obj[delta] sea 0. En esta tarea de dos sumas, parecen permitir [0, target] como una respuesta válida.
Otro dato OR interesante: el || operador en realidad devuelve el valor del primer operando no falso. Por lo tanto, también se puede usar para devolver valores predeterminados.