自己做的javascript简易计算器

html

<!DOCTYPE html>
<html lang="zh">

<head>
    <meta charset="UTF-8">
    <title>javascript任务2-简易计算器</title>
    <link rel="stylesheet" href="style/demo.css">
</head>

<body>
    <div class="counter">
        <table width="100%" border="1">
            <tr>
                <td>
                    <input type="button" value="c" class="cancle" onclick="clearNote()">
                </td>
                <td colspan="3" align="right" class="screen">
                <!-- 计算器运算过程显示位置 -->
                    <div id="process"></div>
                    <!-- 计算器显示屏,显示结果和用户输入 -->
                    <input type="text" readonly="readonly" value="0" id="note">
                </td>
            </tr>
            <tr>
                <td>
                    <!-- 数字7 -->
                    <input type="button" value="7" onclick="countSHow(this)">
                </td>
                <td>
                    <!-- 数字8 -->
                    <input type="button" value="8" onclick="countSHow(this)">
                </td>
                <td>
                    <!-- 数字9 -->
                    <input type="button" value="9" onclick="countSHow(this)">
                </td>
                <td>
                    <!-- 除 -->
                    <input type="button" value="÷" onclick="operationShow(this)">
                </td>
            </tr>
            <tr>
                <td>
                    <!-- 数字4 -->
                    <input type="button" value="4" onclick="countSHow(this)">
                </td>
                <td>
                    <!-- 数字5 -->
                    <input type="button" value="5" onclick="countSHow(this)">
                </td>
                <td>
                    <!-- 数字6 -->
                    <input type="button" value="6" onclick="countSHow(this)">
                </td>
                <td>
                    <!-- 乘 -->
                    <input type="button" value="x" onclick="operationShow(this)">
                </td>
            </tr>
            <tr>
                <td>
                    <!-- 数字1 -->
                    <input type="button" value="1" onclick="countSHow(this)">
                </td>
                <td>
                    <!-- 数字2 -->
                    <input type="button" value="2" onclick="countSHow(this)">
                </td>
                <td>
                    <!-- 数字3 -->
                    <input type="button" value="3" onclick="countSHow(this)">
                </td>
                <td>
                    <!-- 加 -->
                    <input type="button" value="+" onclick="operationShow(this)">
                </td>
            </tr>
            <tr>
                <td>
                    <!-- 数字0 -->
                    <input type="button" value="0" onclick="countSHow(this)">
                </td>
                <td>
                    <!-- 小数点 -->
                    <input type="button" value="." onclick="dot()">
                </td>
                <td>
                    <!-- 等于 -->
                    <input type="button" value="=" onclick="result()">
                </td>
                <td>
                    <!-- 减 -->
                    <input type="button" value="-" onclick="operationShow(this)">
                </td>
            </tr>
        </table>
    </div>
    <script type="text/javascript" src="demo.js"></script>
</body>

</html>

javascript

/*
简易计算器:
可运算加、减、乘、除
*/
num1 = 0; //保存第一值
num2 = 0; //保存第二值
op = ""; //保存运算符
opresult = 0; //保存结果,用于连续计算
opScreen = document.getElementById("note");
/*
思路:第一次点击运算符时,记录第一值和运算符,按等号记录第二值并计算
*/

/*按数字的屏幕显示控制:如果屏幕显示是0,按n替换为n,显示不为0则追加字符 */
function countSHow(n) {
    if (opScreen.value == "0" || opScreen.value == num1 || opScreen.value == "除数不为0") {
        opScreen.value = n.value;
    } else {
        opScreen.value += n.value;
    };

}

/*按点时的屏幕显示控制:已存在‘.‘,则不加‘.‘,否则追加‘.‘*/
function dot() {
    var screenText = opScreen.value;
    if (screenText.indexOf(".") < 0) {
        opScreen.value += ".";
    }

}

//一按运算符,计算器顶部显示运算过程,并更新num1和运算符
function operationShow(o) {
    num1 = opScreen.value;
    op = o.value;
    document.getElementById("process").innerHTML = num1 + op;
}

/*等于,计算并在显示屏输出结果*/
function result() {
    num2 = opScreen.value;
    switch (op) {
        case "÷":
            opresult = divide(num1, num2);
            break;

        case "x":
            opresult = times(num1, num2);
            break;

        case "+":
            opresult = plus(num1, num2);
            break;

        case "-":
            opresult = minus(num1, num2);
            break;
    }

    opScreen.value = opresult;
}

/*加*/
function plus(x, y) {
    return parseFloat(x) + parseFloat(y);
}

/*减*/
function minus(x, y) {
    return x - y;
}

/*乘*/
function times(x, y) {
    return x * y;
}

/*除*/
function divide(x, y) {
    if (y == "0") {
        return "除数不为0";
    } else {
        return x / y;
    }
}

/*重置*/
function clearNote() {
    opScreen.value = "0";
    document.getElementById("process").innerHTML = "";
    num1 = 0;
    num2 = 0;
    op = "";
    opresult = 0;
}

style

.counter {
    width: 300px;
    margin: 100px auto;
    background: #9DD2E8;
    padding: 5px;
}

.counter table,
.counter td {
    border: none;
}

.counter td {
    width: 20%;
}

.counter input[type="button"] {
    width: 100%;
    height: 50px;
    font-size: 28px;
    font-weight: 700;
    cursor: pointer;
    padding: 0;
}

.cancle {
    background: #FCA0A8;
}

#process {
    height: 20px;
}

.screen {
    background: #79A6B9;
    color: #fff;
    padding-right: 10px;
}

.screen input {
    background: #79A6B9;
    border: none;
    text-align: right;
    color: #fff;
    font-size: 20px;
    width: 100%;
}
时间: 2024-08-26 00:33:55

自己做的javascript简易计算器的相关文章

JavaScript简易计算器

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>JS计算器</title> <link rel="stylesheet" href="http://cdn.bootcss.com/bootstrap/3.3.5/css/bootstrap.min.css"&g

JS制作一个简易计算器

//javascript简易计算器 <!DOCTYPE html> <html>  <head>   <title> 事件</title>     <script type="text/javascript">    function count(){             //获取第一个输入框的值     var node1=document.getElementById('txt1').value;     

Java(随笔)——利用HTML,CSS,JavaScript,JQuery编写的简易计算器

一.利用刚学过的前端知识做一个简易的计算器里边使用到了HTML,CSS,JavaScript以及JQuery的知识代码如下:(1)利用CSS设计了计算器外形样式:(2)利用JavaScript实现了建议计算器的功能:代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>简易计算器</title> <link rel="styl

我用JAVA做了个简易图像相似度计算器

简单说两句: 笔主利用这个七夕前后两天的寂寞时光,用JAVA磨了一个简单的图像相似度计算小程序,就在刚才终于纠结完毕,输出了1.0版本,小小的满足了一下可怜的虚荣心..→_→ 原理是使用最简单最基础的感知哈希算法,算法原理戳这里,绝对比笔主讲的要好: http://www.ruanyifeng.com/blog/2011/07/principle_of_similar_image_search.html UI设计图: 实际运行效果图: 关键算法: 1 // 全流程 2 public static

JavaScript 编写的简易计算器

<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  <title>javascript 简单计算器</title> <script> //定义全局变量 var one="1"; var two="2&quo

如何用jsp实现一个简易计算器(三)

做这个jsp页面,主要是为了实现在同一个页面提交和接受数据的功能. 这个小程序存在很多不足,希望大家多多批评指正. <%@ page language="java" contentType="text/html;" pageEncoding="gbk"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://w

使用HTML+CSS,jQuery编写的简易计算器后续(添加了键盘监听)

之前发布了一款简易的计算器,今天做了一下修改,添加了键盘监听事件,不用再用鼠标点点点啦 JS代码: var yunSuan = 0;// 运算符号,0-无运算;1-加法;2-减法;3-乘法;4-除法 var change = 0;// 属于运算符后需要清空上一数值 var num1 = 0;// 运算第一个数据 var num2 = 0;// 运算第二个数据 var cunChuValue = 0;// 存储的数值 $(function() { $(".number").click(f

js制作简易计算器(-)

前言:初学js,老师要求做一个简易计算器,目前只实现了能够计算,很多约束没有有做,待完善.仅作为自己的学习记录. <!doctype html> <html> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <title>简易计算器<

java简易计算器

此小程序实现了计算器的基本功能: import java.awt.*; import java.awt.event.*; import javax.swing.*; public class SimpleCalc extends JFrame{ private static final long serialVersionUID = 1L; String[] labels = {"←","CE","±","√", "