JavaScript实现计算器的四则运算功能

yizhihongxing

实现计算器的四则运算功能,需要掌握一些基本的JavaScript语法。下面是实现计算器的步骤攻略:

1. HTML页面的结构设计

首先需要创建HTML结构,也就是计算器的页面UI布局,建议使用最基础的HTML结构,不使用框架,以便更好的理解JavaScript的实现过程。其中最重要的是操作符和数字按钮,结果展示部分和清除按钮。

示例代码如下:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>JavaScript实现计算器的四则运算功能</title>
  </head>
  <body>
    <div id="calculator">
      <input type="text" id="result" value="0" readonly>
        <div class="calculator_btn">
          <button onclick="num('7')">7</button>
          <button onclick="num('8')">8</button>
          <button onclick="num('9')">9</button>
          <button onclick="operate('+')">+</button><br>
          <button onclick="num('4')">4</button>
          <button onclick="num('5')">5</button>
          <button onclick="num('6')">6</button>
          <button onclick="operate('-')">-</button><br>
          <button onclick="num('1')">1</button>
          <button onclick="num('2')">2</button>
          <button onclick="num('3')">3</button>
          <button onclick="operate('*')">×</button><br>
          <button onclick="num('0')">0</button>
          <button onclick="num('.')">.</button>
          <button onclick="result()">=</button>
          <button onclick="operate('/')">÷</button><br>
          <button onclick="clearAll()">C</button>
        </div>
    </div>
    <script src="./index.js"></script>
  </body>
</html>

2. CSS样式设计

为了让计算器更加美观,需要添加CSS样式。我们仅给出一个简单的例子:

示例代码如下:

#calculator{
  margin: 50px auto;
  width: 280px;
  font-size: 16px;
  font-family: Arial;
  text-align: center;
}

#result{
  width: 240px;
  height: 30px;
  margin: 10px auto;
  font-size: 20px;
  text-align: right;
  background-color: #E8F0FE;
  border: none;
}

.calculator_btn{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

button{
  width: 50px;
  height: 30px;
  margin: 5px;
  background-color: #E8F0FE;
  border-radius: 5px;
  border: none;
  font-size: 16px;
  cursor: pointer;
}

3. JavaScript实现计算器的四则运算功能

接下来就是最核心的JavaScript代码实现了,需要使用JavaScript基础语句,包括函数、事件、操作符等。

示例代码如下:

// 获取HTML页面DOM元素
const result = document.getElementById("result");

// 计算器按键事件:数字、操作符
function num(val) {
  if (result.value == '0') {
    result.value = '';
  }
  result.value += val;
}

function operate(val) {
  if (result.value != '') {
    result.value += val;
  }
}

// 计算结果
function result() {
  result.value = eval(result.value);
}

// 清空结果
function clearAll() {
  result.value = '0';
}

运行以上代码,即可实现一个简单的计算器功能,支持加、减、乘、除等四则运算。

再给一个完整的示例吧:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>JavaScript实现计算器的四则运算功能</title>
  </head>
  <body>
    <div id="calculator">
      <input type="text" id="result" value="0" readonly>
        <div class="calculator_btn">
          <button onclick="num('7')">7</button>
          <button onclick="num('8')">8</button>
          <button onclick="num('9')">9</button>
          <button onclick="operate('+')">+</button><br>
          <button onclick="num('4')">4</button>
          <button onclick="num('5')">5</button>
          <button onclick="num('6')">6</button>
          <button onclick="operate('-')">-</button><br>
          <button onclick="num('1')">1</button>
          <button onclick="num('2')">2</button>
          <button onclick="num('3')">3</button>
          <button onclick="operate('*')">×</button><br>
          <button onclick="num('0')">0</button>
          <button onclick="num('.')">.</button>
          <button onclick="result()">=</button>
          <button onclick="operate('/')">÷</button><br>
          <button onclick="clearAll()">C</button>
        </div>
    </div>
    <script>
      // 获取HTML页面DOM元素
      const result = document.getElementById("result");

      // 计算器按键事件:数字、操作符
      function num(val) {
        if (result.value == '0') {
          result.value = '';
        }
        result.value += val;
      }

      function operate(val) {
        if (result.value != '') {
          result.value += val;
        }
      }

      // 计算结果
      function result() {
        result.value = eval(result.value);
      }

      // 清空结果
      function clearAll() {
        result.value = '0';
      }
    </script>
    <style>
      #calculator{
        margin: 50px auto;
        width: 280px;
        font-size: 16px;
        font-family: Arial;
        text-align: center;
      }

      #result{
        width: 240px;
        height: 30px;
        margin: 10px auto;
        font-size: 20px;
        text-align: right;
        background-color: #E8F0FE;
        border: none;
      }

      .calculator_btn{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
      }

      button{
        width: 50px;
        height: 30px;
        margin: 5px;
        background-color: #E8F0FE;
        border-radius: 5px;
        border: none;
        font-size: 16px;
        cursor: pointer;
      }
    </style>
  </body>
</html>

以上就是“JavaScript实现计算器的四则运算功能”的完整攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript实现计算器的四则运算功能 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • JavaScript实现阿拉伯数字和中文数字互相转换

    讲解JavaScript实现阿拉伯数字和中文数字互相转换的完整攻略如下: 1. 阿拉伯数字转中文数字 1.1 前置知识 阿拉伯数字是我们常用的数字,0-9;而中文数字是汉字所表达的数字,例如:一、二、三、四、五等。 1.2 实现步骤 步骤如下: 定义一个数组numList,包含中文数字对应的字符串; const numList = [‘零’, ‘一’, ‘二…

    JavaScript 2023年5月28日
    00
  • javascript使用Promise对象实现异步编程

    首先我们来简单了解一下什么是Promise对象。Promise是Javascript中一种处理异步操作的对象,它代表了一个异步操作最终完成或失败的状态,可以取代Javascript中的回调函数,降低回调函数地狱和提高程序可读性。 接下来,我们将介绍如何使用Promise对象实现异步编程,过程中会给出两条示例说明。 1.定义Promise对象 我们首先需要定义…

    JavaScript 2023年6月10日
    00
  • 探讨js字符串数组拼接的性能问题

    探讨JS字符串数组拼接的性能问题 在开发中,我们经常需要对字符串进行拼接操作,特别是基于HTML标签的文本拼接,因此对于拼接操作的性能问题需谨慎对待,当操作次数较小时,性能影响可忽略,但当操作次数较多时,性能问题将显著影响代码的执行速度。本文将着重分析字符串数组的拼接性能问题,并提供一些优化解决方案。 字符串数组拼接(Array.prototype.join…

    JavaScript 2023年5月28日
    00
  • JS AJAX前台如何给后台类的函数传递参数

    JS AJAX(Asynchronous JavaScript and XML)使得前端能够异步发起HTTP请求,获取数据,并更新页面,而无需刷新整个页面。在传递参数方面,AJAX提供了多种方式: 通过URL传递参数 通过在URL后面添加查询字符串,即可将参数传递给后台。 let xhr = new XMLHttpRequest(); let url = &…

    JavaScript 2023年6月11日
    00
  • 详细分析jsonp的原理和实现方式

    详细分析JSONP的原理和实现方式 JSONP概述 JSONP(JSON with Padding)是一种JSON数据格式的应用方式。由于同源策略的限制,XMLHttpRequest只允许请求与页面在同一域下的资源,而使用JSONP技术可以实现跨域访问。JSONP通过动态插入script标签,从而实现跨域请求。JSONP的工作原理是:在页面中创建一个 scr…

    JavaScript 2023年5月27日
    00
  • JS实现的进制转换,浮点数相加,数字判断操作示例

    JS实现的进制转换攻略: 对于进制转换,JS提供了parseInt和toString方法。其中parseInt方法可将其他进制的数字转换为十进制,toString方法可将十进制数字转换为其他进制。 示例说明1:将十六进制数字转换为十进制 let hex = "3A"; let dec = parseInt(hex, 16); consol…

    JavaScript 2023年5月28日
    00
  • 微信小程序实现圆心进度条

    接下来我将为大家详细讲解“微信小程序实现圆心进度条”的完整攻略。该攻略分为以下几个步骤: 步骤一:创建页面 在微信小程序开发者工具中创建一个页面,并在页面中引入canvas组件,用于绘制圆心进度条。 <!– 页面 wxml 代码 –> <canvas canvas-id="canvas1" style="w…

    JavaScript 2023年6月11日
    00
  • JavaScript获取当前运行脚本文件所在目录的方法

    JavaScript获取当前运行脚本文件所在目录的方法可以通过以下两种方式来实现: 方法一:使用document.currentScript获取 可以使用 document.currentScript 获取当前运行脚本的元素,进而通过 src 属性获取运行脚本所在的路径。 示例代码如下: const scriptUrl = document.currentS…

    JavaScript 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部