sexta-feira, 16 de julho de 2010

JavaScript - A saga (parte 2)

Karl Schiewaldt

Olá!

Como nos meus posts anteriores, dessa vez postarei mais dois scripts desenvolvidos para aprendizado que fiz esta semana. Eles fazem parte de uma calculadora.
Eles fazem, na prática, a mesma coisa, porém procurei fazer de dois modos diferentes para me familizariar com a estrutura do JavaScript, mesmo ela sendo similar ao PHP/C.

Primeiro, uma função que, além de pegar os valores digitados, coloca as opções dos botões rádio (múltipla escolha) em um vetor, e faz a escolha da operação em um Switch, onde ele diferenciará a opção escolhida pelo usuário:

function calcswitch(){
    var v1=parseInt(document.getElementById('v1').value);
    var v2=parseInt(document.getElementById('v2').value);
    var radios=document.getElementsByClassName('radios');
    var x;
    for(var i=0;i<=3;i++)
        if(radios[i].checked) break;
    switch (i){
        case 0:
            x=v1+v2;
            break;
        case 1:
            x=v1-v2;
            break;
        case 2:
            x=v1*v2;
            break;
        case 3:
            x=v1/v2;
            break;
    }
    alert("valor: "+x);
}

E o segundo, que calcula de um jeito mais simples, somente testando a operação escolhida através de IFs:

function calcif(){
    var v1=parseInt(document.getElementById('v1').value);
    var v2=parseInt(document.getElementById('v2').value);
    var a=document.getElementById('a');
    var s=document.getElementById('s');
    var m=document.getElementById('m');
    var d=document.getElementById('d');
    var x;
    if(a.checked)
        x=v1+v2;
    else
        if(s.checked)
            x=v1-v2;
        else
            if(m.checked)
                x=v1*v2;
            else
                if(d.checked)
                    x=v1/v2;
    alert("valor: "+x);
}

Ambos em sua página html, há 2 inputs do tipo texto, 4 botões de rádio onde será escolhida a operação, e dois botões, um que limpa os campos e o outro que envia, pelo evento OnClick, os valores digitados e a operação escolhida.

Até a próxima!

Nenhum comentário:

Postar um comentário