0
respostas

[Dúvida] Primeiro desafio do #7DaysOfCode

Recebi hoje meu primeiro desafio sobre lógica de programação, fiz minha solução e não tenho certeza se está totalmente correta.

A proposta é essa:

let numeroUm = 1
let stringUm = '1'
let numeroTrinta = 30
let stringTrinta = '30'
let numeroDez = 10
let stringDez = '10'

if (COMPARAR O numeroUm e a stringUm) {
  console.log('As variáveis numeroUm e stringUm tem o mesmo valor, mas tipos diferentes')  
} else {
  console.log('As variáveis numeroUm e stringUm não tem o mesmo valor')  
}

if (COMPARAR O numeroTrinta e a stringTrinta) {
  console.log('As variáveis numeroTrinta e stringTrinta tem o mesmo valor e mesmo tipo')  
} else {
  console.log('As variáveis numeroTrinta e stringTrinta não tem o mesmo tipo')  
}

if (COMPARAR O numeroDez e a stringDez) {
  console.log('As variáveis numeroDez e stringDez tem o mesmo valor, mas tipos diferentes')  
} else {
  console.log('As variáveis numeroDez e stringDez não tem o mesmo valor')

}

E a solução que eu apresentei foi essa:

let numeroUm = 1
let stringUm = '1'
let numeroTrinta = 30
let stringTrinta = '30'
let numeroDez = 10
let stringDez = '10'

if (numeroUm == stringUm) {
  console.log('As variáveis numeroUm e stringUm tem o mesmo valor, mas tipos diferentes')  
} else {
  console.log('As variáveis numeroUm e stringUm não tem o mesmo valor')  
}

if (numeroTrinta == stringTrinta) {
  console.log('As variáveis numeroTrinta e stringTrinta tem o mesmo valor e mesmo tipo')  
} else {
  console.log('As variáveis numeroTrinta e stringTrinta não tem o mesmo tipo')  
}
if (numeroDez == stringDez) {
  console.log('As variáveis numeroDez e stringDez tem o mesmo valor, mas tipos diferentes')
} else {
  console.log('As variáveis numeroDez e stringDez não tem o mesmo valor')

}

Só coloquei o operador "==" dentro do if comparando o número com a string, console me devolveu que eles tem o mesmo valor(numeroUm e stringUm; numeroDez e stringDez; numeroTrinta e stringTrinta) mas tipos diferentes. Na minha cabeça de iniciante faz sentido, porque ambos são o mesmo número(1 e 1; 10 e 10; 30 e 30) porém um é o numeral e outro é uma sequência de caracteres.

Estou correto em pensar dessa maneira?