Ao usar o JavaScript antes, ocasionalmente encontrava o uso dos dois símbolos == e === para determinar se as duas variáveis são iguais. No entanto, a diferença entre esses dois símbolos não foi investigada. Encontrei o símbolo === novamente hoje, então decidi verificar qual é a diferença.
Existem dois caracteres de comparação "==" e "==" em JavaScript ", então qual é a diferença?
1. Para tipos básicos, como string, número, há uma diferença entre == e ===
1) Comparação entre diferentes tipos, == Comparação de "convertido no mesmo tipo" para ver se o "valor" é igual. === Se os tipos forem diferentes, o resultado é diferente
2) Comparação do mesmo tipo, compare diretamente o "valor" e os resultados dos dois são os mesmos
2. Para tipos avançados, como matriz, objeto, não há diferença entre == e ===
Quando uma variável é definida como marca e uma variável é definida como tipo de objeto, mas seu valor é o mesmo, o resultado da comparação de == e === é o mesmo porque é uma comparação de "endereço do ponteiro"
3. Existe uma diferença entre tipos básicos e tipos avançados == e ===
1) para ==, converta avançado em tipos básicos e execute a comparação "valor"
2) Como os tipos são diferentes, o resultado === é falso