npm 包 pretty-hash 使用教程

阅读时长 3 分钟读完

前言

在前端开发领域,npm 包是非常重要的部分。这些包方便我们引用和使用别人写的代码,在项目开发中也有广泛的运用。今天我们要介绍一个非常简单但也非常有用的 npm 包,它就是 pretty-hash。

什么是 pretty-hash?

pretty-hash 是一个 npm 包,它可以将长长的 SHA1 值转换成小写字母和数字的短字符串。这对于文件版本控制和检查文件完整性是非常有用的。pretty-hash 提供了一个简单的 API,可以很容易地在项目中使用。

安装和使用

首先,我们需要安装 pretty-hash,通过以下的命令:

接下来,我们可以在项目中引用 pretty-hash:

现在,pretty-hash 已经准备好在项目中使用!下面是一些示范:

-- -------------------- ---- -------
----- ---- - -------------------------------------------

-- ------- -
----------------- -- ------

-- ----- -
---------------- - ------- - --- -- --------

-- -------
---------------- - ----------- ---- --- -- ------

-- ----
---------------- - ------- --- --- -- -------
展开代码

深度解析

pretty-hash 的源代码其实非常简单,只有 60 行,加上注释也不算多。不过,我们在深入探究一下代码时,会发现它应该被称为“pretty-crypto-hash”,因为它并不只是用于 SHA1, 也可以被用于 SHA256、MD5 以及其他各种加密算法。

要生成短哈希值,pretty-hash 采用以下步骤:

  1. 生成哈希值。
  2. 将哈希转换成 base 36。
  3. 将哈希值的长度设为选定长度。
  4. 如果启用了前缀,则将其添加到最终哈希值的前面,这样它就可以成为 v1、v2 等等。

跟踪 pretty-hash 的源代码,我们发现主要是在一些细节和差异化处理上,这些细节处理的特点是针对不同的哈希算法或长度或前缀等。我们来看下面这段具有代表性的源代码:

-- -------------------- ---- -------
-- ------------ -
  -- -------- ------- --
  ---- - -------------- -----------------
  ---- - -------------------
- ---- -
  ---- - -------------- -----------------
-

-- ------------ - - --- -----
---- - ----------------- --------------------- ---------

-- ----
-- -------- -
  ---- - ------ - -----
-

------ -----
展开代码

我们可以看到,pretty-hash 采用了一个小技巧,它先将哈希值转换成十进制数字,然后再将其转换为 base-36(只使用数字和小写字母的 36 位数字系统),此次转换可以让哈希值更短。如果我们需要使用大写字母,就需要使用 toUpperCase() 方法转换一下。

指导意义

pretty-hash 是一个很小但也很有用的 npm 包,它可以方便地将长的字符串哈希值转换为更短、更易读的哈希值,非常适用于文件版本控制和检查文件完整性。未来如果你需要在前端项目中使用哈希值,可以尝试使用 pretty-hash,它会给你带来更加精简、高效的代码实现。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/69004

纠错
反馈

纠错反馈