Static
I64BIT_Base64 编码使用的字符表,由 64 个大小写字母、数字和两个特殊符号组成。
Static
_decbase64data该方法用于对给定的 Base64 编码字符串进行解码,并返回解码后的数据。在对数据进行解码之前,会首先校验数据完整性,以确保数据在传输过程中没有被篡改。如果数据完整性校验失败,将会抛出一个错误。
如果输入字符串长度小于 20,则抛出异常
如果解码结果校验失败,则抛出异常
可以看到,_decbase64data 方法既可以处理字符串类型的数据,也可以处理数字数组类型的数据,而且会在解码过程中检测数据完整性,以确保数据在传输过程中没有被篡改。该方法在数据接收端,用于对接收到的数据进行解码和校验,并返回原始数据。
// 对字符串 'SGVsbG8sIHdvcmxkIQ==' 进行 Base64 解码
const decodedData1 = Base64_4._decbase64data('SGVsbG8sIHdvcmxkIQ==')
// 对编码后的字符串 'NkZUcDluYnhiR3h6' 进行 Base64 解码
const decodedData2 = Base64_4._decbase64data('NkZUcDluYnhiR3h6')
要解码的 Base64 编码字符串
返回解码后的数据
Static
_encbase64data该方法用于对给定的数据进行 Base64 编码,并返回编码后的字符串。它接受一个任意类型的参数 data,可以是字符串、数字、数组等任何数据类型。在对数据进行编码之前,会先生成一些随机字符串,并将其与原始数据组合起来。然后,将组合后的数据进行哈希计算,并将计算得到的哈希值插入到组合后的数据中。最后,将组合后的数据进行 Base64 编码,并返回编码后的字符串。
可以看到,_encbase64data 方法既可以处理字符串类型的数据,也可以处理数字数组类型的数据,而且会在编码过程中增加一些随机字符串和哈希值,以增加数据的安全性。该方法在数据传输过程中,用于将原始数据进行编码,并生成一些随机字符串和哈希值,以便在接收端对数据进行解码和校验。
// 对字符串 'Hello, world!' 进行 Base64 编码
const encodedStr1 = Base64_4._encbase64data('Hello, world!')
// 对数字数组 [1, 2, 3, 4, 5] 进行 Base64 编码
const encodedStr2 = Base64_4._encbase64data([1, 2, 3, 4, 5])
要编码的数据
返回编码后的字符串
Static
_hashcode该方法用于计算输入字符串或数组的哈希值。它接受两个参数:要计算哈希值的字符串或数组 input,以及一个可选的布尔值参数 out,用于指示是否输出计算耗时到控制台。
该方法采用了一种简单的哈希算法,可以对任何长度的字符串或数组进行计算,并输出固定长度的哈希值。在计算过程中,会对每个字符或元素进行特定的处理,并累加到哈希值中。最终,会使用 _hashcode 方法中定义的 Base64 字符表将哈希值转换为 6 位长度的字符串,以便在数据编码和解码过程中使用。
可以看到,_hashcode 方法既可以处理字符串类型的数据,也可以处理数字数组类型的数据,而且可以根据需要输出计算耗时。该方法在数据编码和解码过程中,用于生成一些固定长度的哈希值,以便在数据传输过程中检测数据完整性和防止篡改。
// 计算字符串 'Hello, world!' 的哈希值
const hash1 = Base64_4._hashcode('Hello, world!')
// 计算数字数组 [1, 2, 3, 4, 5] 的哈希值
const hash2 = Base64_4._hashcode([1, 2, 3, 4, 5])
要计算哈希值的字符串或数组
Optional
out: boolean如果为 true,则输出计算耗时到控制台
返回计算出的哈希值
Static
random该方法用于生成指定长度的随机字符串。它接受两个参数:要生成的字符串长度 len 和包含可供选择的字符集的字符串 charSet(可选)。如果未指定 charSet 参数,则默认使用大小写字母和数字的组合作为字符集。
可以看到,在使用 randomString 方法时只需要指定要生成的字符串长度即可,而字符集参数是可选的。如果需要指定字符集,则可以将其作为第二个参数传入。
// 生成一个包含 10 个字符的随机字符串
const randomStr1 = Base64_4.randomString(10)
// 生成一个包含 20 个字符、由小写字母组成的随机字符串
const randomStr2 = Base64_4.randomString(20, 'abcdefghijklmnopqrstuvwxyz')
要生成的字符串长度
Optional
charSet: string包含可供选择的字符集的字符串,如果未指定,则默认为大小写字母和数字的组合
返回生成的随机字符串
Generated using TypeDoc
这个 Base64_4 类提供了对数据进行 Base64 编码和解码的方法,并且在编码和解码过程中还会计算哈希值并校验数据完整性,以保证数据在传输过程中不被篡改。
Description
该示例将字符串 Hello, world! 进行了 Base64 编码,并输出了编码后的字符串。然后对编码后的字符串进行解码,并输出了解码后的数据。在编码和解码过程中,由于 Base64_4 类会计算哈希值并校验数据完整性,所以即使数据在传输过程中被篡改,也能够及时发现。
Example