当前位置:首页 > JavaScript

js原型链实现计算器

2026-03-02 01:38:19JavaScript

使用原型链实现计算器

在JavaScript中,可以通过原型链实现一个基础的计算器功能。以下是一个基于原型链的计算器实现示例:

定义构造函数

function Calculator() {
  this.currentValue = 0;
}

添加原型方法

Calculator.prototype.add = function(num) {
  this.currentValue += num;
  return this;
};

Calculator.prototype.subtract = function(num) {
  this.currentValue -= num;
  return this;
};

Calculator.prototype.multiply = function(num) {
  this.currentValue *= num;
  return this;
};

Calculator.prototype.divide = function(num) {
  this.currentValue /= num;
  return this;
};

Calculator.prototype.getValue = function() {
  return this.currentValue;
};

Calculator.prototype.clear = function() {
  this.currentValue = 0;
  return this;
};

使用方法示例

const calc = new Calculator();
calc.add(5).multiply(2).subtract(3).divide(2);
console.log(calc.getValue()); // 输出: 3.5

实现链式调用

通过在每个方法中返回this,可以实现链式调用。每个方法都会修改currentValue,然后返回计算器实例本身,以便继续调用其他方法。

扩展功能

可以继续扩展计算器的功能,例如添加幂运算、平方根等:

js原型链实现计算器

Calculator.prototype.power = function(num) {
  this.currentValue = Math.pow(this.currentValue, num);
  return this;
};

Calculator.prototype.sqrt = function() {
  this.currentValue = Math.sqrt(this.currentValue);
  return this;
};

注意事项

  • 所有方法都会修改currentValue的状态
  • 除法操作需要注意除数为0的情况
  • 浮点数运算可能存在精度问题
  • 可以通过添加历史记录功能来增强计算器

这种实现方式展示了JavaScript原型链的基本用法,通过原型共享方法可以节省内存,同时保持实例间的独立性。

标签: 原型计算器
分享给朋友:

相关文章

react实现计算器

react实现计算器

React 实现计算器的步骤 创建 React 项目 使用 create-react-app 或 Vite 初始化项目: npx create-react-app calculator # 或 np…

css制作计算器界面

css制作计算器界面

CSS制作计算器界面 基本结构 使用HTML创建计算器的基本结构,包含显示屏和按钮区域。显示屏用于显示输入和结果,按钮区域包含数字、运算符和功能键。 <div class="calculato…

php实现计算器

php实现计算器

基本计算器实现 使用PHP创建一个简单的计算器可以通过HTML表单接收用户输入,PHP处理计算逻辑。以下是一个基础实现示例: HTML表单部分 (calculator.html) <form…

js实现计算器代码

js实现计算器代码

以下是一个简单的JavaScript计算器实现代码示例,包含基本运算功能(加、减、乘、除)和清除功能: HTML结构 <div class="calculator"> <inp…

js实现点击计算器

js实现点击计算器

实现点击计算器的基本结构 使用HTML、CSS和JavaScript创建一个简单的点击计算器。HTML负责结构,CSS负责样式,JavaScript处理逻辑。 <!DOCTYPE ht…

实现一种js原型继承

实现一种js原型继承

原型继承的基本概念 原型继承是JavaScript中实现对象间共享属性和方法的重要机制。每个JavaScript对象都有一个内部链接指向另一个对象(原型),当访问对象的属性时,如果对象本身没有该属性,…