当前位置: 首页 > news >正文

前端开发工具

Lodash 有普通的 CommonJS 版本(通常称为 lodash)和 ES6 模块版本(称为 lodash-es)。它们的主要区别包括:
模块化:lodash 是传统的 CommonJS 模块,可使用 require 或 import 引入;lodash-es 是 ES6 模块版本,通过 import 来引入。
引入普通 lodash:const _ = require(‘lodash’); 或 import _ from ‘lodash’;
引入 lodash-es:import _ from ‘lodash-es’;
Tree Shaking支持
:lodash 传统模块在引入时会将整个库导入,可能导致引入大量不必要的代码;lodash-es 被设计为支持 Tree Shaking,只有实际使用的部分会被打包,能减小最终的文件大小。
如果你的项目使用了 ES6 模块系统,并且关心代码体积,那么推荐使用 lodash-es。如果你使用的是传统的 CommonJS 模块系统,或者不太关心体积,那么使用 lodash 也是可以的。
例如,使用 lodash 的一些常见函数:

 
import _ from 'lodash'; // 数组去重
const uniqueArray = _.uniq([1, 2, 2, 3, 3, 3]); // 深拷贝对象
const copiedObject = _.cloneDeep({ key: 'value' }); // 从对象中选取特定属性
const selectedProperties = _.pick({ name: 'John', age: 25, city: 'New York' }, ['name', 'age']); 
**

除了 Lodash,还有许多其他流行的 JavaScript 工具库,以下是一些常用的库:
D3.js:
一个流行的 JavaScript 数据可视化库,用于创建交互式的数据图表、地图等可视化效果,提供了一系列的 API 和工具。
Three.js:
一款运行在浏览器中的 3D 引擎,用 JavaScript 编写的 WebGL 第三方函数库。通过 Three.js 可以在不使用插件的情况下在网页中创建和展示三维计算机图形,包括摄影机、光影、材质等各种对象。
Chart.js:
一个简单、灵活的 JavaScript 图表工具,是一个基于 HTML5 技术的 JavaScript 图表工具。它支持8种图表类型,每种方式都具有动态效果并且可定制。
Immutable.js:
一个提供不可变数据结构的 JavaScript 库,一旦创建,就不能再被更改的数据。对 Immutable 对象的任何修改或添加删除操作都会返回一个新的 Immutable 对象。
Leaflet:
一个开源并且对移动端友好的交互式地图 JavaScript 库。它大小仅仅只有42KB,并且拥有绝大部分开发者所需要的所有地图特性,简单、高效并且易用。
Underscore:
一个 JavaScript 实用库,提供了一整套函数式编程的实用功能,但是没有扩展任何 JavaScript 内置对象。它弥补了部分 jQuery 没有实现的功能,同时又是 Backbone.js 必不可少的部分。
Hammer.js:
一个轻量级的 JavaScript 库,主要用于处理移动设备上的触摸事件,提供了一种简单易用的方式来创建复杂的触摸交互体验。
Ramda.js:一款实用的 JavaScript 函数式编程库,与其他函数式的库相比,Ramda 的目标更为专注,专门为函数式编程风格而设计,更容易创建函数式 pipeline、且从不改变用户已有数据。
Highlight.js:
一款轻量级的 JavaScript 库,可以自动检测并高亮显示代码片段。它支持多种编程语言,包括但不限于 HTML、CSS、JavaScript、PHP、Python、Ruby 等。

以上就是文章全部内容了,如果喜欢这篇文章的话,还希望三连支持一下,感谢!

http://www.lryc.cn/news/398381.html

相关文章:

  • Everything搜索无法搜索到桌面的文件(无法检索C盘 或 特定路径的文件)
  • React@16.x(52)Redux@4.x(1)- 核心概念
  • pytest系列——pytest_runtest_makereport钩子函数获取测试用例执行结果
  • Oracle数据库模式对象
  • 各地户外分散视频监控点位,如何实现远程集中实时监看?
  • Vue笔记12-新的组件
  • PySide6开发桌面程序,PySide6入门实战(下)
  • Java面试八股之Redis有哪些数据类型?底层实现分别是什么
  • 分布式应用系统设计:即时消息系统
  • 【YashanDB知识库】调整NUMBER精度,再执行统计信息收集高级包偶现数据库异常退出
  • ComfyUI+MuseV+MuseTalk图片数字人
  • 【Python】从基础到进阶(三):深入了解Python中的运算符与表达式
  • C#的DllImport使用方法
  • 人工智能算法工程师(中级)课程11-PyTorch神经网络之循环神经网络RNN与代码详解
  • 服务端生成RSA密钥实例
  • Maven Nexus3 私服搭建、配置、项目发布指南
  • 东方博宜1627 - 暑期的旅游计划(2)
  • FastAPI 学习之路(三十五)项目结构优化
  • linux源码安装mysql8.0的小白教程
  • 如何评估独立站的外链质量?
  • AI在编程领域的作用
  • 医疗器械网络安全 | 漏洞扫描、渗透测试没有发现问题,是否说明我的设备是安全的?
  • 【GameFramework扩展应用】6-4、GameFramework框架增加AB包加解密功能
  • 通用图形处理器设计GPGPU基础与架构(二)
  • 在一个使用了 Sass 的 React Webpack 项目中安装和使用 Tailwind CSS
  • HDMI简介
  • 原作者带队,LSTM卷土重来之Vision-LSTM出世
  • Fiddler 抓包工具抓https
  • 详细谈谈负载均衡的startupProbe探针、livenessProbe探针、readnessProbe探针如何使用以及使用差异化
  • 守望数据边界:sklearn中的离群点检测技术