isso realmente soa como uma pergunta simples, mas não tive sorte em pesquisar. o que faz o +dem
function addMonths(d, n, keepTime) {
if (+d) {
significa?
+…significa em JavaScript
isso realmente soa como uma pergunta simples, mas não tive sorte em pesquisar. o que faz o +dem
function addMonths(d, n, keepTime) {
if (+d) {
significa?
+…significa em JavaScript
Respostas:
O +operador retorna a representação numérica do objeto. Portanto, no seu caso em particular, parece indicar se dé um número diferente de zero.
.parseInt()?
Conforme explicado em outras respostas, ele converte a variável em um número. Especialmente útil quando d pode ser um número ou uma sequência função que avalia para um número.
Exemplo (usando a addMonthsfunção na pergunta):
addMonths(34,1,true);
addMonths("34",1,true);
então o +dserá avaliado para um número em todos os casos. Evitando, assim, a necessidade de verificar o tipo e seguir caminhos de código diferentes, dependendo se dé um número, uma função ou uma sequência que pode ser convertida em um número.
+dnão irá avaliar para um número com o primeiro exemplo invocação de AddMonths
+function(){...}irá produzir um NaNnão avaliar a função