使用HTML和Javascript评估的javascript计算器

时间:2017-08-05 01:36:29

标签: javascript html function loops

我尝试使用HTML + CSS + Javascript创建一个简单的计算器,我坚持了好几个小时,我还在W3学校,代码笔和这里查看。 非常感谢你们帮助新手。

我在这里遇到的问题:

  1. 无法从我的按钮获取我的javascript值,我尝试 使用eval进行数学运算。
  2. 我尝试让按钮值显示我的textarea。
  3. 非常感谢你们!

    按钮HTML代码的一部分:

    <body>
            </div> -->
        <table>
              <tr>
                <th>
                <button class="key" type="button" value="clear" name="button"> C </button>
                <input class="answer2" type="text" name="" value=""
             </tr>
    
            <tr>
                <th>
                <button type="button" value= "7" name="button"> 7 </button>
                <button type="button" value= "8" name="button"> 8 </button>
                <button type="button" value= "9" name="button"> 9 </button>
                <button id="bnt1" type="button" value= "/" name="button"> / </button>
    
                <th>
             </tr>
    

    这是我的javascript代码

    let button = document.querySelectorAll("button")
    // let bntumber = document.querySelectorAll("button").value // this one I got get undefined.
    console.log(button) // just checking my button selector is working or not.
    
    
    ///////// Make the magicial math happen //////////
    
    function calulator () {
        let result = [];
        for (let i = 0 ; i < button.length ; i ++) { 
    // go through the loop, select button to create value
            button.addEventListener("click", function(){
               result.push(button[i].value)    
    // button value add in the result array
            })
    
        }
        return button
        console.log(eval(result));
    }
    
    ///////////make the button value show up in the textarea///////////////
    
    function showtext() {
        let text = document.querySelector("button")
        let showtext = document.getElementsByClassName("answer2");
        showtext.innerHTML = text.value;
    }
    
    
    ////////after get the result, press "c" button to clear the setting////////
    
    function cleartext () {
        let text = document.querySelector("button")
        let showtext = document.getElementsByClassName("answer2");
        showtext.innerHTML = text.value;
    }
    

    我没有把CSS放在这里。非常感谢!

1 个答案:

答案 0 :(得分:0)

您的'button'变量是一个数组。我想您需要像在

中那样添加索引
button[i].addEventListener("click", function(){
       result.push(button[i].value)