JavaScript实现简单计算器小程序

下面是详细讲解 "JavaScript实现简单计算器小程序" 的完整攻略:

介绍

计算器小程序是一种非常常见的小型应用程序,它可以用来进行简单的算术计算。使用 JavaScript 编写一个计算器小程序的过程,可以通过不同的方法来完成,但本次教程讲解的是最基本的方法,以便初学者学习。

步骤

以下是一个基本的步骤来创建 JavaScript 计算器小程序:

步骤 1:HTML 和 CSS

先在 HTML 中创建一个简单的输入框和按钮,它们将用于接收要进行计算的值和执行计算操作。同时,使用 CSS 为其添加一些样式。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Calculator</title>
  <link rel="stylesheet" href="style.css">
</head>
<body>
  <div id="calculator">
    <div class="result">
      <input type="text" id="answer" placeholder="0">
    </div>
    <div class="buttons">
      <button onclick="clearInput()">C</button>
      <button onclick="input('%')">%</button>
      <button onclick="input('/')">/</button>
      <button onclick="input('*')">x</button>
      <button onclick="input('7')">7</button>
      <button onclick="input('8')">8</button>
      <button onclick="input('9')">9</button>
      <button onclick="input('-')">-</button>
      <button onclick="input('4')">4</button>
      <button onclick="input('5')">5</button>
      <button onclick="input('6')">6</button>
      <button onclick="input('+')">+</button>
      <button onclick="input('1')">1</button>
      <button onclick="input('2')">2</button>
      <button onclick="input('3')">3</button>
      <button onclick="equal()">=</button>
      <button onclick="input('0')">0</button>
      <button onclick="input('.')">.</button>
    </div>
  </div>
  <script src="script.js"></script>
</body>
</html>
#calculator {
  width: 240px;
  margin: 0 auto;
  text-align: center;
}

.result {
  margin-bottom: 10px;
}

input {
  width: 100%;
  height: 40px;
  font-size: 20px;
}

.buttons {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

button {
  width: 100%;
  height: 40px;
  font-size: 20px;
  background-color: #eee;
}

步骤 2:JavaScript 代码

创建 JavaScript 文件,并将其连接到 HTML 文件中,然后在 JavaScript 文件中添加以下代码:

var answer = document.getElementById("answer");

function input(val) {
  answer.value += val;
}

function equal() {
  var exp = answer.value;
  if (exp) {
    answer.value = eval(exp);
  }
}

function clearInput() {
  answer.value = "";
}

在这里,我们首先通过 document.getElementById() 来获取输入框,并使用 value 属性来更新这个输入框的值。然后我们在 input() 函数中调用了 input() 方法,并将其参数传递给 answer 输入框,以便将点击的按钮添加到输入框中。

接下来我们在 equal() 函数中,使用 eval() 函数,来计算用户在输入框中输入的表达式,并将计算结果显示在输入框上。

最后,我们在 clearInput() 函数中,简单地使用 answer.value = ""; 来清除输入框中的所有内容。

步骤 3:测试计算器

现在,打开 HTML 文件,并测试计算器。可以通过点击按钮,将数字、小数点、操作符以及百分号输入到输入框中,然后点击等号按钮,计算器会自动计算表达式并在输入框上显示计算结果。

以下是一个关于该计算器的示例使用:

1. 8 + 9 = 17
2. 17 / 3 = 5.666666666666667
3. 34 * 11 = 374

另一个示例

以下是一个稍微复杂一些的示例,它可以根据下拉选择列表进行计算。

步骤 1:HTML 和 CSS

通过下面的 HTML 代码创造对应的下拉菜单和按钮:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <title>Calculator</title>
    <link rel="stylesheet" href="style.css">
  </head>
  <body>
    <h1>Calculator</h1>
    <label for="number1">Number 1:</label>
    <input type="number" id="number1">
    <br>
    <label for="operation">Operation:</label>
    <select id="operation">
      <option value="add">+</option>
      <option value="subtract">-</option>
      <option value="multiply">x</option>
      <option value="divide">/</option>
    </select>
    <br>
    <label for="number2">Number 2:</label>
    <input type="number" id="number2">
    <br>
    <button onclick="calculate()">Calculate</button>
    <br>
    <div id="result"></div>
    <script src="script.js"></script>
  </body>
</html>

以下是等价于 HTML 的 CSS 代码:

label {
  display: inline-block;
  width: 100px;
}

input[type=number] {
  width: 200px;
}

select {
  width: 200px;
  margin-bottom: 10px;
}

button {
  margin-top: 20px;
  padding: 10px 20px;
  font-size: 16px;
}

#result {
  margin-top: 20px;
  font-size: 24px;
}

步骤 2:JavaScript 代码

在 JavaScript 文件中,添加以下代码:

function calculate() {
  var number1 = document.getElementById("number1").value;
  var number2 = document.getElementById("number2").value;
  var operator = document.getElementById("operation").value;
  var result = "";

  if (operator === "add") {
    result = Number(number1) + Number(number2);
  } else if (operator === "subtract") {
    result = Number(number1) - Number(number2);
  } else if (operator === "multiply") {
    result = Number(number1) * Number(number2);
  } else if (operator === "divide") {
    result = Number(number1) / Number(number2);
  }

  document.getElementById("result").innerHTML = result;
}

calculate() 函数中,首先获取了用户选择的数字、操作符,并通过 if-else 语句来执行所选操作。最后,将计算结果赋值给变量 result,并将结果输出到 resultdiv 元素上。

步骤 3:测试计算器

现在,打开 HTML 文件,并测试计算器。可以通过输入两个数字并从下拉菜单中选择一个操作符,然后点击“Calculate" 按钮,计算器会自动计算表达式并显示计算结果。

结论

在本文中讲解了两种实现 JavaScript 简单计算器的方法,分别是通过 HTML 和 CSS 创建一个 UI,并使用 JavaScript 来实现计算器的功能;以及更为复杂的方法,根据选择的操作符来计算数字。这些方法可以帮助初学者了解 JavaScript 中的一些基本概念,同时也可以作为实现更多高级 JavaScript 小程序的基础。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript实现简单计算器小程序 - Python技术站

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

相关文章

  • JavaScript lodash常见用法系列小结

    JavaScript Lodash 常见用法系列小结 简介 在 JavaScript 编程中,Lodash是一个非常实用的工具库。它提供了很多实用的方法,可以让我们更方便地进行数组、对象等各种数据操作。 本系列将以实际应用场景为导向,总结 Lodash 常用的功能和用法,并且给出详细的代码示例。 目录 数组操作 对象操作 字符串操作 集合操作 函数式编程 其…

    JavaScript 2023年5月28日
    00
  • 利用js来实现缩略语列表、文献来源链接和快捷键列表

    要实现缩略语列表、文献来源链接和快捷键列表的功能,可以使用一些JavaScript库和工具来完成,常见的包括jQuery和Bootstrap等。 缩略语列表 Markdown中可以通过使用缩略语的方式来节约篇幅。可以使用JavaScript来添加一个缩略语列表,让用户能够快速查看和了解所有的缩略语含义。 实现步骤: (1)首先需要在Markdown文档中定义…

    JavaScript 2023年6月10日
    00
  • 浅析JS中常用类型转换及运算符表达式

    浅析JS中常用类型转换及运算符表达式 类型转换 显式类型转换 字符串转换 使用toString()、String()函数将其他类型转为字符串类型,或使用+运算符将其他类型与字符串拼接即可: var num1 = 123; console.log(num1.toString()); // "123" console.log(String(n…

    JavaScript 2023年5月28日
    00
  • 利用jsonp跨域调用百度js实现搜索框智能提示

    利用 JSONP 跨域调用百度 JS 实现搜索框智能提示是一个常见的前端开发技巧。本篇攻略将详细讲解 JSONP 的使用步骤以及相应的注意事项。 一、JSONP 的基础知识 JSONP(JSON with Padding)是一种跨域技术,它利用了 script 标签的跨域特性来实现。通常情况下,我们在同源代码中无法通过 AJAX 请求一个跨域的 API,这时…

    JavaScript 2023年5月27日
    00
  • JS URL传中文参数引发的乱码问题

    当JS程序需要将中文参数作为URL请求的一部分时,往往会引发“乱码”的问题。 造成该问题的原因是:URL中只能包含某些预定义的字符,例如字母、数字和少数几个符号。如果我们需要处理的中文字符没有被编码成它们应该代表的URL编码序列,那么这些字符就可能不能被正确地识别和使用。 接下来,我们将提供两种针对此问题的攻略: 攻略1:使用encodeURI和decode…

    JavaScript 2023年5月20日
    00
  • javascript数组去重常用方法实例分析

    JavaScript数组去重常用方法实例分析 在 JavaScript 中,对于数组去重的方法有很多种,接下来我们分别介绍两种常用的方法,分别是“使用 Set 数据结构去除重复项”和“双重循环判断去除重复项”。 方法一:使用 Set 数据结构去除重复项 Set 数据结构是 ES6 中新增的一种数据类型,它类似于数组,但是成员的值都是唯一的,没有重复的值。我们…

    JavaScript 2023年6月10日
    00
  • JS的框架Polymer中的dom-if和is属性使用说明

    Polymer是一个基于Web Components标准的JavaScript框架,它提供了一些常用的组件和工具,例如dom-if和is属性。 dom-if dom-if是Polymer中的一个条件渲染组件,它可以根据条件动态地显示或隐藏元素。我们可以使用dom-if元素包裹需要进行条件渲染的元素,并设置if属性来控制是否显示该元素。当if属性返回true时…

    JavaScript 2023年6月10日
    00
  • JS实现生成由字母与数字组合的随机字符串功能详解

    下面是详细的攻略: 1. 开发思路 生成随机字符串的最基本思路是,在一定的字符集中随机选取一些字符,然后按照一定顺序排列生成字符串。对于字符集的选择,我们可以限定在数字、小写字母、大写字母三类字符中,并且可以根据具体需求自定义字符集。然后利用 JavaScript 中的 Math.random() 函数来实现字符的随机选择,最后将所选的字符组合在一起形成随机…

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