JS para impacientes

2: O que o operador AND && faz?

February 02, 2020

O¬†operador¬†&& ou¬†Logical AND¬†encontra a primeira¬†express√£o¬†falsa¬†em seus operandos e a retorna e, se n√£o encontrar nenhuma¬†express√£o¬†falsa, retorna a √ļltima express√£o.¬†

   console.log(false && 1 && []) //logs false
   console.log(" " && true && 5) //logs 5

Outra forma de usar √© a verifica√ß√£o de curto-circuito, para evitar trabalho desnecess√°rio, ele automaticamente N√ÉO executa as pr√≥ximas instru√ß√Ķes caso o resultado da primeira seja falso. Exemplo:

Repare no catch, ele fecha a conexão do banco:

Usando if:

  const router: Router = Router()

  router.get('/endpoint', (req: Request, res: Response) => {
     let conMobile: PoolConnection
     try {
        //do some db operations
     } catch (e) {
     if (conMobile) {
      conMobile.release()
     }
  }
})

Usando o operador && (mais elegante):

const router: Router = Router()

router.get('/endpoint', (req: Request, res: Response) => {
  let conMobile: PoolConnection
  try {
     //do some db operations
  } catch (e) {
    conMobile && conMobile.release()
  }
})

Baseado no excelente artigo: 70 Interview Questions


Est√° curtindo os conte√ļdos da Reativa? Quer que a gente te ajude a ser um dev melhor? Clique aqui.