JavaScript基于DOM操作实现简单的数学运算功能示例

下面是“JavaScript基于DOM操作实现简单的数学运算功能示例”的完整攻略。

一、什么是DOM

DOM(文档对象模型)是指浏览器将HTML文档解析成树状结构的一种方式。在DOM中,每一个HTML元素(标签)都是一个对象,开发者通过JavaScript可以访问和操作这些对象,实现页面的动态效果和交互功能。

二、使用DOM操作实现简单的数学运算

1. 示例一:实现简单的加减乘除运算

该示例需要实现一个简单的计算器,用户可以输入两个数字,然后选择加、减、乘、除四种运算中的一种,最后点击“计算”按钮,页面将会显示出运算的结果。

HTML部分

  <p>请输入第一个数字:</p>
  <input type="text" id="num1" />
  <p>请输入第二个数字:</p>
  <input type="text" id="num2" />
  <p>请选择运算符:</p>
  <select id="operator">
    <option value="+">+</option>
    <option value="-">-</option>
    <option value="*">*</option>
    <option value="/">/</option>
  </select>
  <br/>
  <br/>
  <button onclick="calculate()">计算</button>
  <br/>
  <br/>
  <p id="result"></p>

JavaScript部分

function calculate() {
  var num1 = document.getElementById("num1").value;
  var num2 = document.getElementById("num2").value;
  var operator = document.getElementById("operator").value;
  var result = 0;
  switch (operator) {
    case "+":
      result = Number(num1) + Number(num2);
      break;
    case "-":
      result = Number(num1) - Number(num2);
      break;
    case "*":
      result = Number(num1) * Number(num2);
      break;
    case "/":
      if (num2 != 0) {
        result = Number(num1) / Number(num2);
      } else {
        alert("除数不能为0");
        return;
      }
      break;
    default:
      alert("请选择运算符");
      return;
  }
  document.getElementById("result").innerText = "计算结果为:" + result;
}

该示例通过JavaScript DOM操作,获取输入框和下拉框的值,并根据选择的运算符实现相应的运算,最终将结果显示在页面上。

2. 示例二:实现简单的图形计算

该示例需要实现一个图形计算器,用户可以选择计算圆形、矩形、三角形的面积和周长。当用户选择相应图形并输入对应参数后,点击“计算”按钮可以得到计算结果。

HTML部分

    <p>请选择图形:</p>
    <select id="shape">
      <option value="circle">圆形</option>
      <option value="rectangle">矩形</option>
      <option value="triangle">三角形</option>
    </select>
    <br/><br/>
    <div id="circle" style="display:none;">
      <p>请输入圆的半径:</p>
      <input type="text" id="circleR" /><br/><br/>
      <button onclick="calcCircle()">计算</button>
      <br/><br/>
      <p id="resCircle"></p>
    </div>
    <div id="rectangle" style="display:none;">
      <p>请输入矩形的高:</p>
      <input type="text" id="rectH" /><br/><br/>
      <p>请输入矩形的宽:</p>
      <input type="text" id="rectW" /><br/><br/>
      <button onclick="calcRectangle()">计算</button>
      <br/><br/>
      <p id="resRectangle"></p>
    </div>
    <div id="triangle" style="display:none;">
      <p>请输入三角形的底:</p>
      <input type="text" id="triB" /><br/><br/>
      <p>请输入三角形的高:</p>
      <input type="text" id="triH" /><br/><br/>
      <button onclick="calcTriangle()">计算</button>
      <br/><br/>
      <p id="resTriangle"></p>
    </div>

JavaScript部分

function showShape() {
  var shape = document.getElementById("shape").value;
  document.getElementById("circle").style.display = "none";
  document.getElementById("rectangle").style.display = "none";
  document.getElementById("triangle").style.display = "none";
  switch (shape) {
    case "circle":
      document.getElementById("circle").style.display = "block";
      break;
    case "rectangle":
      document.getElementById("rectangle").style.display = "block";
      break;
    case "triangle":
      document.getElementById("triangle").style.display = "block";
      break;
  }
}

function calcCircle() {
  var r = document.getElementById("circleR").value;
  var area = Math.PI * r * r;
  var circumference = 2 * Math.PI * r;
  document.getElementById("resCircle").innerHTML =
    "圆形的面积:" + area.toFixed(2) + "<br/>圆形的周长:" + circumference.toFixed(2);
}

function calcRectangle() {
  var h = document.getElementById("rectH").value;
  var w = document.getElementById("rectW").value;
  var area = h * w;
  var perimeter = 2 * (Number(h) + Number(w));
  document.getElementById("resRectangle").innerHTML =
    "矩形的面积:" + area.toFixed(2) + "<br/>矩形的周长:" + perimeter.toFixed(2);
}

function calcTriangle() {
  var b = document.getElementById("triB").value;
  var h = document.getElementById("triH").value;
  var area = 0.5 * b * h;
  var perimeter = Number(b) + Number(h) + Math.sqrt(b * b + h * h);
  document.getElementById("resTriangle").innerHTML =
    "三角形的面积:" + area.toFixed(2) + "<br/>三角形的周长:" + perimeter.toFixed(2);
}

该示例通过JavaScript DOM操作,实现选择图形、展示对应参数输入框、计算展示结果等完整计算器功能。

以上是使用DOM操作实现简单的数学运算功能的攻略说明,希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript基于DOM操作实现简单的数学运算功能示例 - Python技术站

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

相关文章

  • JS几个常用的函数和对象定义与用法示例

    JS常用的函数和对象非常多,以下是其中几个常用的函数和对象的定义及用法示例: 函数 1. parseInt() parseInt() 函数将一个字符串解析成整数,或者说提取数字部分,并返回整数。如果不能转换,则返回NaN。 注意:如果字符串以0x或0X前缀开头, parseInt() 函数会把数字识别为16进制数字。 语法: parseInt(string,…

    JavaScript 2023年5月27日
    00
  • 「中高级前端面试」JavaScript手写代码无敌秘籍(推荐)

    「中高级前端面试」JavaScript手写代码无敌秘籍攻略 JavaScript手写代码是前端面试中的重要考点之一。在这里,我将为大家准备了一份完整攻略,包含了常见的JavaScript手写代码题和解法,希望对大家在面试中有所帮助。 常见的JavaScript手写代码题 1. 实现深拷贝 深拷贝指的是将一个对象完全复制一份并且与原对象没有关联。在JavaSc…

    JavaScript 2023年5月28日
    00
  • 一文读懂TS 中联合类型和交叉类型各自的含义

    一文读懂 TS 中联合类型和交叉类型各自的含义 在 TypeScript 中,联合类型和交叉类型是两种非常重要的概念。它们可以帮助我们更好地描述类型,提高代码的清晰度和健壮性。接下来我们将详细讲解这两种类型的含义和用法。 联合类型 联合类型(Union Types)表示一个值可以是多种类型中的一种。用 | 符号连接多个类型,表示这些类型是可选的,例如: le…

    JavaScript 2023年5月28日
    00
  • Layui事件监听的实现(表单和数据表格)

    概述: Layui是一个轻量级的前端UI框架,其特点是注重结构化,适度封装与扩展性,而且非常适合大型的前端应用开发。在Layui中,实现事件监听是非常重要的一部分。本文将详细介绍Layui事件监听的实现,包括如何监听表单提交事件、数据表格行操作事件等常见事件,同时提供完整的代码示例进行说明。 Layui表单提交事件监听: 在Layui提交表单的过程中,可以通…

    JavaScript 2023年6月10日
    00
  • 浅谈javascript的url参数parse和build函数

    浅谈JavaScript的URL参数parse和build函数 在编写JavaScript的时候,我们经常需要操作URL链接中的参数。下面我们来看一下如何使用JavaScript中的URL参数parse和build函数来处理URL链接中的参数。 URL参数parse函数 URL参数parse函数是用来将URL链接中查询字符串部分解析成一个JavaScript…

    JavaScript 2023年6月11日
    00
  • JS Thunk 函数的含义和用法实例总结

    JS Thunk 函数实际上是一种特殊的函数,它将一个多参数函数转换成一个只接受回调函数为参数的单参函数。目的是为了让函数的执行结果可以通过回调函数来获取。 使用 Thunk 函数可以有效地处理异步操作,使得回调嵌套不那么深,也更容易进行错误捕捉。以下将详细解释 Thunk 函数的含义和用法实例总结。 1. 概念 1.1 Thunk 函数的定义 Thunk …

    JavaScript 2023年5月27日
    00
  • countup.js实现数字动态叠加效果

    我来详细讲解一下“countup.js实现数字动态叠加效果”的完整攻略: 准备工作 首先,我们需要将countup.js引入到网页中。可以使用npm进行安装,也可以使用CDN链接进行引入。 <script src="https://cdn.jsdelivr.net/npm/countup.js@2.0.7/dist/countUp.min.j…

    JavaScript 2023年6月11日
    00
  • js 上传文件预览的简单实例

    下面是针对“js上传文件预览的简单实例”的攻略,具体步骤如下: 准备工作 在开始编写 js 上传文件预览的代码之前,需要先准备好以下工作: 一个文本编辑器,用于编写代码。 一个支持 JavaScript 的浏览器,用于运行代码和进行预览。 需要用到的 HTML 和 CSS 代码,用来实现页面布局和样式。 实现方法 具体实现 js 上传文件预览,需要分以下几个…

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