当前位置:首页 > JavaScript

js实现复用

2026-04-05 10:08:39JavaScript

复用实现方法

在JavaScript中实现代码复用可以通过多种方式完成,以下是一些常见且高效的方法:

函数封装

将重复逻辑封装成函数,通过调用函数实现复用。例如计算两数之和:

function add(a, b) {
  return a + b;
}
console.log(add(1, 2)); // 3
console.log(add(3, 4)); // 7

高阶函数

接受函数作为参数或返回函数的函数,适用于处理相似流程但不同细节的场景:

js实现复用

function processArray(arr, processor) {
  return arr.map(processor);
}
const doubled = processArray([1, 2, 3], x => x * 2);

模块化

使用ES6模块系统将代码拆分到不同文件,通过import/export实现复用:

// math.js
export function square(x) { return x * x; }

// app.js
import { square } from './math.js';
console.log(square(5)); // 25

类继承

通过class和extends实现面向对象编程中的复用:

js实现复用

class Animal {
  constructor(name) { this.name = name; }
  speak() { console.log(`${this.name} makes noise`); }
}

class Dog extends Animal {
  speak() { console.log(`${this.name} barks`); }
}

const d = new Dog('Rex');
d.speak(); // Rex barks

混入模式

通过Object.assign实现多重继承的效果:

const canEat = {
  eat() { console.log('Eating'); }
};

const canWalk = {
  walk() { console.log('Walking'); }
};

class Person {
  constructor(name) { this.name = name; }
}

Object.assign(Person.prototype, canEat, canWalk);
const p = new Person('John');
p.walk(); // Walking

组合函数

将多个函数组合成新函数,实现行为复用:

const compose = (...fns) => x => fns.reduceRight((v, f) => f(v), x);
const add1 = x => x + 1;
const double = x => x * 2;
const addThenDouble = compose(double, add1);
console.log(addThenDouble(5)); // 12

实用工具库

创建包含常用功能的工具对象实现复用:

const utils = {
  formatDate(date) { /*...*/ },
  validateEmail(email) { /*...*/ }
};

utils.formatDate(new Date());

选择哪种复用方式取决于具体场景和项目规模。函数封装和模块化适合大多数情况,类继承和混入适合复杂对象系统,高阶函数和组合适合函数式编程场景。

标签: 复用js
分享给朋友:

相关文章

js实现验证码

js实现验证码

实现验证码的JavaScript方法 生成随机验证码 使用Math.random()生成随机字符串,结合数字和字母: function generateCaptcha() { const cha…

js实现动画

js实现动画

使用 CSS 动画与 JavaScript 控制 通过 JavaScript 动态添加或移除 CSS 类来触发动画。CSS 定义关键帧(@keyframes),JavaScript 通过 classL…

js实现图片放大缩小

js实现图片放大缩小

实现图片放大缩小的基础方法 使用CSS的transform: scale()属性可以快速实现图片的放大缩小效果。通过JavaScript动态修改该属性值: const img = document.…

js实现类

js实现类

JavaScript 实现类的几种方式 JavaScript 是一种基于原型的语言,但在 ES6 之后引入了 class 语法糖,使得实现类更加直观。以下是几种常见的实现方式: 使用构造函数 传统的…

js手势实现

js手势实现

手势识别实现方法 在JavaScript中实现手势识别通常涉及监听触摸事件(touchstart、touchmove、touchend)或鼠标事件(mousedown、mousemove、mouseu…

js画图实现

js画图实现

使用Canvas API绘制图形 Canvas是HTML5提供的绘图API,通过JavaScript操作Canvas元素可以绘制各种图形。以下是一个简单的示例: <canvas id="myC…