lodash
lodash 是一个一致性、模块化、高性能的 JavaScript 实用工具库。
lodash 是一个同时支持浏览器环境以及 Node 环境的 JavaScript 工具库。
安装方式
浏览器环境
<script src="lodash.js"></script>
浏览器可直接通过 script 命令引入 lodash。与 jQuery 默认使用 $ 类似,lodash 默认使用 _ 作为 lodash 的全局变量名。
Node 环境
$ npm i --save lodash
// 加载全部内容
var _ = require('lodash');
// 加载核心部分
var _ = require('lodash/core');
// 加载函数式编程相关
var fp = require('lodash/fp');
// 加载指定的方法分类
var array = require('lodash/array');
var object = require('lodash/fp/object');
源码解读
package.json - devDependencies
{
"devDependencies": {
"async": "^2.1.4",
"benchmark": "^2.1.3",
"chalk": "^1.1.3",
"cheerio": "^0.22.0",
"codecov.io": "~0.1.6",
"coveralls": "^2.11.15",
"curl-amd": "~0.8.12",
"docdown": "~0.7.2",
"dojo": "^1.12.1",
"ecstatic": "^2.2.2",
"eslint": "^6.2.0",
"eslint-plugin-import": "^2.18.2",
"esm": "^3.1.3",
"fs-extra": "~1.0.0",
"glob": "^7.1.1",
"istanbul": "0.4.5",
"jquery": "^3.4.1",
"lodash": "4.17.11",
"lodash-doc-globals": "^0.1.1",
"markdown-doctest": "^0.9.1",
"mocha": "^5.2.0",
"optional-dev-dependency": "^2.0.0",
"platform": "^1.3.3",
"qunit-extras": "^3.0.0",
"qunitjs": "^2.1.0",
"request": "^2.79.0",
"requirejs": "^2.3.2",
"sauce-tunnel": "^2.5.0",
"uglify-js": "2.7.5",
"webpack": "^1.14.0"
}
}
-
async:pormise及 async/await 方案未成熟前的异步流程控制库。
-
benchmark:高精度的基准测试工具,用于比较新旧代码或库与库之间的速度比较。
-
chalk:对终端输出内容进行 文字颜色、背景颜色、粗体、下划线等内容进行控制的工具库。
-
cheerio:服务端版本的jQuery,主要作用是可以通过类jQuery API 对html/xml 进行解析和修改。常用于爬虫及xml解析。
-
codecov.io:测试覆盖率类库。
-
coveralls:测试覆盖率类库。
-
curl-amd: AMD 规范js加载器。
-
docdown:对 js 文件通过 JSDoc 格式读取注释文档,并生成 markdown 格式文档。
-
dojo:应该是类 jQuery/jQuery UI 类库,主要提供DOM/Ajax/组件等功能。
-
ecstatic:静态文件服务器,http-server 包有使用此库。
-
eslint:代码格式化检查工具。
-
eslint-plugin-import:代码格式化检查工具。
-
esm:ECMAScript 模块化标准加载器,可以代替Node的 require()。
-
fs-extra:fs扩展库。
-
glob:可以使用通配符匹配文件的库。
-
jquery:js 常用库。
-
markdown-doctest:markdown 文档中js代码部分测试库,可以测试markdown中的代码块是否存在语法错误,是否可执行。
-
mocha:js 测试框架。
-
optional-dev-dependency:依赖相关库??。 额
-
platform:可以在几乎所有JavaScript平台上运行的平台检测库。
-
qunit-extras:qunitjs 扩展库。
-
qunitjs:单元测试库。
-
request:HTTP请求模拟/Ajax请求库。
-
requirejs:浏览器端 require 标准异步加载库。
-
sauce-tunnel:内网穿透库。
-
uglify-js:js代码压缩库。
-
webpack:js等资源打包工具。
参考内容
-
Lodash 官网 https://www.lodashjs.com/
-
Lodash - npm https://www.npmjs.com/package/lodash