node.js - 为什么名称为 'underscore' 或 'lodash' ?

标签 node.js underscore.js lodash

为什么这些库以 _ 命名?

它背后是否有某种意义或者原因是“只是因为我们可以”

据我所知,underscorelodash 做很多类似的事情。此外,这两个名称都指向 _

连他们的变量名都是_

那么 _ 与这些库的工作有什么关系吗?还是只是一个名字?

最佳答案

Lodash

根据我对两者历史的理解,lodash 是下划线的轻量级替代品。所以 lodash 实际上是下划线的文字游戏 - “低破折号”,当破折号 - 离地面有点低时看起来像什么? _ 为什么,当然是下划线

所以这涵盖了 lodash 尽可能详细的内容。

下划线

Underscore 的起源只是猜测 - 但我会做出猜测。

回到 Javascript 的“黄金时代”,当强大的 JQuery 占据统治地位时,小型(当时)实用程序库开始出现 - 但我们当时没有的东西(或不为人知)是用于导入和需要外部库的简单构造。

非常像 JQuery 将其所有功能分组在一个巨大的 $ 对象下 - 下划线(我猜)想要相同。为什么?可能是为了简洁和 l33t 因素。特别是在大多数人只是在页脚中包含一堆脚本标签的日子里。如果您正在查看实用程序库主页,那么什么更吸引您:

// totes l33t
_.map(a, function(e) { ... }

// pfft, no thanks grandpa
underscore.map(a, function(e) { ... }

但是为什么_。在 $ 之后,它是剩下的几个很酷的简称之一:

An identifier must start with $, _, or any character in the Unicode categories “Uppercase letter (Lu)”, “Lowercase letter (Ll)”, “Titlecase letter (Lt)”, “Modifier letter (Lm)”, “Other letter (Lo)”, or “Letter number (Nl)”.

https://mathiasbynens.be/notes/javascript-identifiers

关于node.js - 为什么名称为 'underscore' 或 'lodash' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38006384/

相关文章:

javascript - Webpack 配置不接受配置模式选项

node.js - png-js : cannot read property '8' of undefined

javascript - 使用 JavaScript 查找数组中重复值的最高数量

underscore.js - 在链中使用 zip

templates - 使用 require.js、主干和下划线本地化模板

javascript - lodash 将键添加到 countBy 函数

javascript - 在nodejs中等待promise时捕获异常

javascript - Jade 从路由器传递对象/数组时出错

javascript - 如何从任何深度的嵌套 javascript 对象中删除属性?

javascript - 如何使用 lodash groupby 或其他函数对以下数据进行分组?