Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Projeto] Desafio 2 - Propostas de Solução

Boa tarde.

Seguem minhas propostas de solução para este desafio. Peço avaliarem e comentarem, por favor (ainda tenho dificuldades de lógica).

Desafio 1: este retornou o erro abaixo, o qual gostaria de verificar com vocês o que significa:

// Retornou como Erro // desafio1.js:2 Uncaught TypeError: Cannot set properties of null (setting 'innerHTML') // at desafio1.js:2:28 */

        let mensagem = document.querySelector('h1');
        mensagem.innerHTML = 'Mensagem Padrao do Programador';
       
        let mensagem2 = document.querySelector('p');
        mensagem2.innerHTML = 'Ola, Mundo';

        console.log(mensagem);
        console.log(mensagem2);

Desafio 2: Apresentou o erro abaixo:

// desafio2.js:3 Uncaught TypeError: Cannot set properties of null (setting 'innerHtml') // at exibeNome (desafio2.js:3:21) // at desafio2.js:6:5

function exibeNome (tag, texto){
    let campo = document.querySelector(tag);
    campo.innerHtml = texto;
    }

    exibeNome('h1', 'Exiba o Nome');
    exibeNome('p', 'O nome e Felipe');
    console.log(texto);

Desafio 3: este ok.

function dobroNumero(numero,dobro) {
    
}
    numero = prompt(`Digite o numero desejado`); 
    alert(`O numero digitado foi ${numero}.`);
    dobro = (numero*2);
    console.log(`O dobro do numero e ${dobro}`);
    

Desafio 4: este OK.

function mediaTresNumeros(numeroa,numerob,numeroc,soma,media) {
    }
    numeroa = parseFloat(prompt(`Digite o primeiro numero desejado`));
    numerob = parseFloat(prompt(`Digite o segundo numero desejado`));
    numeroc = parseFloat(prompt(`Digite o terceiro numero desejado`));   
    alert(`O primeiro numero digitado foi ${numeroa}.`);
    alert(`O segundo numero digitado foi ${numerob}.`);
    alert(`O terceiro numero digitado foi ${numeroc}.`);
    soma = (numeroa+numerob+numeroc);
    media = (soma/3);
    alert(`A media dos numeros digitados e ${media}.`);    
    console.log(`A media dos numeros digitados e ${media}`);

Desafio 5: este OK.

 function retornaMaiorNumero(numeroa,numerob){
        }
        numeroa = parseFloat(prompt(`Digite o primeiro numero desejado`));
        numerob = parseFloat(prompt(`Digite o segundo numero desejado`));
            alert (`O primeiro numero digitado e ${numeroa}.`);
            alert (`O segundo numero digitado e ${numerob}.`);
                
        if (numeroa > numerob){
            alert(`O maior numero e ${numeroa}.`);
            console.log("O primeiro numero e o maior"); 
        }
            else{
            alert(`O maior numero e numero ${numerob}.`);     
            console.log("O segundo numero e o maior");     
        }        
       

Desafio 6: este OK.

function numeroAoQuadrado(numero,quadrado){
        }
        numero = parseFloat(prompt ('Digite o Numero Desejado'));
        alert(`O numero digitado foi ${numero}.`);
        quadrado = parseFloat(Math.pow(numero,2));
        alert (`O quadrado do numero e ${quadrado}`); 
        console.log(`O quadrado do numero digitado e ${quadrado}`);
            

Muito obrigado a todos.

1 resposta
solução!

Oii, Glauco, tudo bem com você?

Obrigada por compartilhar suas soluções conosco. Parabéns pela iniciativa :)

No Desafio 1, o erro "Cannot set properties of null" aparece quando você tentar acessar um elemento que não existe na página. No seu caso, parece que o JS não encontra os elementos h1 e p no seu HTML. Veja, por favor, se esses elementos existem na sua página.

Já no Desafio 2 há um erro de digitação. Você escreveu innerHtml, e o correto é innerHTML. O JavaScript é case sensitive, então é importante escrever do jeito ideal. Além disso, a variável 'texto' não está definida no escopo global, então você não poderá acessá-la fora da função.

Ele ficaria assim:

function exibeNome (tag, texto){
    let campo = document.querySelector(tag);
    campo.innerHTML = texto;
    console.log(texto);
}

exibeNome('h1', 'Exiba o Nome');
exibeNome('p', 'O nome e Felipe');

Espero que isso tenha te ajudado. Se outra dúvida surgir, fique à vontade para postar.

Abraços!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.