JS各种概念

/纯函数(Pure Function):一个纯函数的输出只取决于输入参数,不会改变任何外部状态或产生副作用。

javascript 复制代码
// 纯函数示例

function add(a, b) {

    return a + b;

}

副作用(Side Effect):在函数执行期间对外部环境进行修改或造成其他影响的行为。

javascript 复制代码
// 副作用示例

let counter = 0;



function increment() {

    counter++;

}

increment();

console.log(counter); // 输出 1

颗粒化(Currying):将接受多个参数的函数转换为一系列接受单个参数并返回新函数的过程。

javascript 复制代码
function multiply(a) {

    return function(b) {

        return function(c) {

            return a * b * c;

        };

    };

}



console.log(multiply(2)(3)(4)); // 输出 24

高阶函数(Higher Order Function):能够接受函数作为参数或返回一个函数的函数。

javascript 复制代码
// 高阶函数示例

function operate(func, a, b) {

    return func(a, b);

}



function add(a, b) {

    return a + b;

}



console.log(operate(add, 3, 4)); // 输出 7

前端模块化是指将前端代码分割成多个独立的模块,每个模块都有特定的功能和责任。

这样做的好处包括提高代码的可维护性、可读性和复用性,同时也有利于团队协作和项目的扩展性。

在前端开发中,常用的模块化方案包括CommonJS、AMD(Asynchronous Module Definition)、CMD(Common Module Definition)和ES6 Modules等。

通过模块化,开发者可以更好地管理项目的代码结构,降低耦合度,提高开发效率。

相关推荐
执子念的飞鱼2 分钟前
浏览器直接预览 Pages、Numbers、Keynote:iWork 格式真正难在哪
前端·javascript
matlab代码3 分钟前
基于matlab肤色人脸标记检测系统 GUI界面【源码53期】
开发语言·matlab·人脸标记
alloc5 分钟前
从延迟聚合到可解释诊断:MetricKit 的原理与工程化实践
前端
颜进强6 分钟前
06 - OpenSpec change 从模糊想法到完整契约:new change / explore / propose 三连
前端·后端·ai编程
Cache技术分享6 分钟前
499. Java 反射 - 获取类型上的注解
前端·后端
用户921080262866 分钟前
左侧历史对话模块:使用 Conversations 搭建会话入口
前端
用户345208153887 分钟前
我给 DSH 写了读 10x 数据的插件
javascript
用户69371750013847 分钟前
9531 款 AI 工具流量真相:当 90% 的访问涌向 100 个平台,普通创业者还有机会吗?
前端·后端
莫问ABC12 分钟前
HTML、CSS、JavaScript 前端三件套
前端·css·html
执子念的飞鱼13 分钟前
70MB Excel 浏览器预览失败:定位 XLSX 重复解压与内存峰值
javascript·性能优化