当前位置:首页 > 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实现拖拽功能需要监听鼠标事件,包括mousedown、mousemove和mouseup。以下是实现的基本逻辑: const draggableEleme…

js实现图片放大缩小

js实现图片放大缩小

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

js实现拷贝

js实现拷贝

实现文本拷贝 使用 document.execCommand 方法(已废弃但兼容性较好): function copyText(text) { const textarea = document…

js实现目录

js实现目录

实现目录的基本思路 在JavaScript中实现目录功能通常涉及以下几个核心步骤:解析文档中的标题元素(如h1-h6),动态生成目录结构,并添加交互逻辑(如点击跳转)。以下是具体实现方法: 解析标题…

js 实现页面刷新

js 实现页面刷新

使用 location.reload() location.reload() 是原生 JavaScript 提供的页面刷新方法。调用该方法会重新加载当前页面,相当于点击浏览器的刷新按钮。 // 基本…

js实现图片滚动

js实现图片滚动

图片滚动的实现方法 使用CSS动画实现 通过CSS的animation和@keyframes可以实现简单的图片滚动效果。这种方法适合静态图片的无缝循环滚动。 <style> .scr…