1. 程式人生 > >用js簡單實現計算器功能

用js簡單實現計算器功能

我用的是比較蠢的一種方式,基本用到的就是Math一些相關方法/屬性 和簡單的函式,完整程式碼如下:

<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script>    
            function inputEvent(e){
               var val=e.innerHTML;
               var xsval=document.getElementById("i1");
               xsval.value+=val; }
+
            function inputresult(){
               var xsval=document.getElementById("i1");
               xsval.value=eval(document.getElementById("i1").value);}
                        
            function clearNum(){
               var xsval=document.getElementById("i1");
               xsval.value="";
               document.getElementById("i1").focus();}
            
            function sinEvent(){
            var xsval=document.getElementById("i1");
               xsval.value=Math.sin(document.getElementById("i1").value); }
            
            function cosEvent(){
            var xsval=document.getElementById("i1");
               xsval.value=Math.cos(document.getElementById("i1").value); }
            
            function asinEvent(){
            var xsval=document.getElementById("i1");
               xsval.value=Math.asin(document.getElementById("i1").value); }
            
            function acosEvent(){
            var xsval=document.getElementById("i1");
               xsval.value=Math.acos(document.getElementById("i1").value); }
            
            function tanEvent(){
            var xsval=document.getElementById("i1");
               xsval.value=Math.tan(document.getElementById("i1").value); }
            
            function atanEvent(){
            var xsval=document.getElementById("i1");
               xsval.value=Math.atan(document.getElementById("i1").value); }
            
            function logEvent(){
            var xsval=document.getElementById("i1");
               xsval.value=Math.log(document.getElementById("i1").value); }
            
            function expEvent(){
            var xsval=document.getElementById("i1");
               xsval.value=Math.exp(document.getElementById("i1").value); }
            
            function sprtEvent(){
            var xsval=document.getElementById("i1");
               xsval.value=Math.sprt(document.getElementById("i1").value); }
            
            function powEvent(){
            var xsval=document.getElementById("i1");
               xsval.value=Math.pow(document.getElementById("i1").value),-1;}
            
            function PIEvent(){
            var xsval=document.getElementById("i1");
               xsval.value=Math.PI;}
            
            function EEvent(){
            var xsval=document.getElementById("i1");
               xsval.value=Math.E;}
        </script>
    </head>
    <body>
        <table border="1px" >
            <tr>
                <td colspan="7"style="text-align: center;">javascript計算器</td>
            </tr>
            <tr>
                <td colspan="7"> <input id="i1" style="width: 250px;"; type="text" value=""/>  </td>
            </tr>
            <tr>
                <td><button onclick="sinEvent()" >sin</button></td>
                <td><button onclick="cosEvent()" >cos</button></td>
                <td><button onclick="inputEvent(this)" >1</button></td>
                <td><button onclick="inputEvent(this)" >2</button></td>
                <td><button onclick="inputEvent(this)" >3</button></td>
                <td><button onclick="inputEvent(this)" >+</button></td>
            </tr>
            <tr>
                <td><button onclick="asinEvent()" >asin</button></td>
                <td><button onclick="acosEvent()" >acos</button></td>
                <td><button onclick="inputEvent(this)" >4</button></td>
                <td><button onclick="inputEvent(this)" >5</button></td>
                <td><button onclick="inputEvent(this)" >6</button></td>
                <td><button onclick="inputEvent(this)" >-</button></td>
            </tr>
            <tr>
                <td><button onclick="tanEvent()" >tan</button></td>
                <td><button onclick="atanEvent()" >atan</button></td>
                <td><button onclick="inputEvent(this)" >7</button></td>
                <td><button onclick="inputEvent(this)" >8</button></td>
                <td><button onclick="inputEvent(this)" >9</button></td>
                <td><button onclick="inputEvent(this)" >*</button></td>
            </tr>
            <tr>
                <td><button onclick="logEvent()" >log</button></td>
                <td><button onclick="expEvent()" >exp</button></td>
                <td><button onclick="inputEvent(this)" >0</button></td>
                <td><button onclick="inputEvent(this)" >.</button></td>
                <td><button onclick="inputresult(this)" >=</button></td>
                <td><button onclick="inputEvent(this)" >/</button></td>
            </tr>
            <tr>
                <td><button onclick="sprtEvent()" >sprt</button></td>
                <td><button onclick="powEvent()" >1/x</button></td>
                <td><button onclick="PIEvent()" >PI</button></td>
                <td><button onclick="EEvent()" >E</button></td>
                <td colspan="2"><button  onclick="clearNum()" >清除</button></td>
            </tr>
        </table>
    </body>
</html>