Pregunta

Código Javascript:

var a = (b) ? b : 40;

Es un trabajo, solo NetBeans dice:"Utilizar el operador | | (Columna [, donde el ?es])".Yo no encuentro ninguna explicación.

¿Qué es?

Gracias!

¿Fue útil?

Solución

Si son solo pruebas para la truthyness de b entonces usted puede hacer esto:

var a = b || 40;

... que es más corto y (posiblemente) más obvio.En JavaScript, || es un corto circuito operador.Devuelve el lado izquierdo si es true, en caso contrario devuelve el lado derecho.(es decir,no devolver un valor booleano, a menos que la entrada era un booleano).

Si quieres ver si b en realidad es definido, entonces usted está mejor con:

var a = (typeof b !== "undefined") ? b : 40;

Otros consejos

Los tubos son de la or declaración. var a = b || 40 dice que si b es no-falsey valor, sea a=b, de lo contrario, 40.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top