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

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

相关推荐
冷小鱼7 分钟前
AI Agent 的核心算法:多智能体协作(Multi-Agent Systems)
前端·人工智能·算法·multi-agent·多智能体协作·systems
观远数据32 分钟前
经营闭环的最后一公里:从看见问题到解决问题之间还差什么
java·开发语言·数据库
Java面试题总结37 分钟前
Go 语言大白话入门 6 - 判断与循环
开发语言·后端·golang
qq_4221525739 分钟前
PDF页面管理的几种实用方法:拆分、合并、删除指定页面
java·前端·pdf
触底反弹42 分钟前
💥 暴力解 LeetCode 导致 OOM:10000 行数据撑爆 V8 堆内存的完整排查
javascript·算法·面试
小小测试开发43 分钟前
Midscene.js:14K Stars 视驱 UI 自动化框架,用截图替代 DOM 选择器写测试
javascript·ui·自动化
qq_2128389743 分钟前
后端Node.js + MySQL,前端Html+js,Nginx反向代理快速部署WEB项目
前端·mysql·node.js
Mh1 小时前
程序员和非程序员使用 AI 进行编程的区别究竟在哪里?
前端·javascript·xcode
m0_617493941 小时前
Python OpenCV 孔洞检测与缺陷分析详解与实战
开发语言·python·opencv
hsg772 小时前
简述:Rust、GeoRust、自主研发GIS平台
开发语言·后端·rust