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等。

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

相关推荐
Chester_19995 分钟前
CSP202203C.计算资源调度器
开发语言·数据结构·c++·蓝桥杯
FreeTinker23 分钟前
HTML本地存储技术解析:localStorage与sessionStorage的原理、差异与应用场景
前端·html
qq_4523962324 分钟前
第十二篇:《全链路监控与可观测性:前端错误追踪与性能分析》
前端
海兰1 小时前
【应用】基于 Next.js 16 + Python mplfinance的金融K线图与技术指标可视化平台(三)
javascript·python·金融
EXI-小洲1 小时前
Java 操作 Word:字符串替换、图片插入、动态生成表格与API接口下载
java·开发语言·spring boot·word
wangruofeng1 小时前
Phosphor Icons 官网源码拆解:URL 即存储、水波动画与 7362 Star 图标库的架构实践
前端·架构·github
BigTopOne2 小时前
WebRTC Native / Android 开发学习资源整理
前端
会周易的程序员2 小时前
给 PLC 写一个字节码虚拟机:STVM 虚拟机架构设计
开发语言·c++·虚拟机·软plc·iec61131·stvm
机器视觉知识推荐、就业指导2 小时前
为什么老说“纯 Qt 没啥就业市场”?
开发语言·qt
telepan2 小时前
Qt 开发避坑与性能指南:如何优雅、安全地定义全局常量字符串?
开发语言·qt