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

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

相关推荐
伞伞悦读17 分钟前
【第36期】Python 目录与路径详解:pathlib、文件遍历、创建、复制、移动和删除风险
开发语言·python
GreenTea42 分钟前
GrokBot 核心成员 Lauren Tan:每月交付 2000 个 PR 的人,是怎么用 AI 的
前端·后端·架构
mCell2 小时前
用 Knip 清理 AI Coding 留下的冗余代码
前端·ai编程·前端工程化
笃行3503 小时前
使用Rokid AIUI做了一个童年推箱子游戏
前端
2601_966949653 小时前
只拿到股票代码还不够:量化程序到底还需要哪些标的信息?——从数据建模开始理解股票元数据
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
m0_734571763 小时前
深入理解5g <十八>传输块tbsize的计算
开发语言·5g
excel4 小时前
前端加密的作用与使用场景
前端
RAN11426760085 小时前
1.3第一个程序的介绍
开发语言·qt
计算机魔术师5 小时前
纽约时报版权诉讼披露:微软高管内部称训练 AI 是人类历史上最大规模劳动窃取
前端
去伪存真5 小时前
大模型的参数量为什么那么大?
前端·人工智能