esto realmente suena como una pregunta simple pero no tuve suerte buscando. que hace el +d
en
function addMonths(d, n, keepTime) {
if (+d) {
¿medio?
javascript
goh
fuente
fuente
+…
significa en JavaScriptRespuestas:
El
+
operador devuelve la representación numérica del objeto. Entonces, en su caso particular, parecería estar predicando el if en si es o nod
un número distinto de cero.La referencia aquí . Y, como se señala en los comentarios, aquí .
fuente
.parseInt()
?Es un operador unario "+" que produce una expresión numérica. Sería lo mismo que
d*1
, creo.fuente
Como se explicó en otras respuestas, convierte la variable en un número. Especialmente útil cuando d puede ser un número o una cadena
funciónque se evalúa como un númeroEjemplo (usando la
addMonths
función en la pregunta):entonces el
+d
evaluará a un número en todos los casos. Por lo tanto, evitando la necesidad de verificar el tipo y tomar diferentes rutas de código dependiendo de sid
es un número, una función o una cadena que se puede convertir en un número.fuente
+d
no evaluará a un número con el primer ejemplo de invocación de addMonths+function(){...}
producirá unNaN
no evaluar la función