npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

kaloo-tools

v1.1.1

Published

提供了格式化时间、HTMLEscape、操作字符串、随机数、颜色转换等相关的功能。

Downloads

5

Readme

kaloo.js 使用说明文档

[toc]

1 安装
npm i kaloo-tools
2 导入
const kaloo = require('kaloo-tools')
3 时间 Date
3.1 格式化时间
// 调用 DateFormat 对时间进行格式化
const dt = kaloo.DateFormat(new Date())
// 结果 2022-04-20 14:02:13
console.log(dt);
3.2 获取距离元旦还剩多少时间
// 调用 getNewYearDay() 方法
const newYearDay = kaloo.getNewYearDay()
// 输出 255天8时5分20秒
console.log(newYearDay);
3.3 将标准时间转换成时间戳
// 调用 getDateTimeStamp()
const dateTimeStamp = kaloo.getDateTimeStamp('2022-4-20 16:00:00')
// 输出 1650441600000
console.log(dateTimeStamp);
3.4 将时间戳转换成几天前,几小时前,几分钟前
// 调用 getDateDiff() 参数为时间戳
// 如果不知道填写时间戳,可以使用
// getDateTimeStamp() 方法将标准时间转换成时间戳
const dateTimeStamp = kaloo.getDateTimeStamp('2022/4/20 16:00:00')
const dateDiff = kaloo.getDateDiff(dateTimeStamp)
// 输出 15分钟前
console.log(dateDiff);
3.5 计算和某人相遇过去了多久
// 调用 getLoveDay() 方法
const loveDay = kaloo.getLoveDay('2022-4-20 00:00:00')
// 输出 0天16时30分21秒
console.log(loveDay);
4 网页相关 HTML JS JQ CSS
4.1 转义 HTML 中的特殊字符
// 待转换的 HTML 字符串
const htmlStr = '<div class="h1">这种话急急急急急急<div>&nbsp;</div></div>'
// 调用 HtmlEscape 方法进行转换
const str = kaloo.HtmlEscape(htmlStr)
// 转换的结果 &lt;div class=&quot;h1&quot;&gt;这种话急急急急急急&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;/div&gt;
console.log(str);
4.2 还原 HTML 中的特殊字符
// 待还原的 HTML 字符串
const str2 = kaloo.HtmlUnEscape(str)
// 结果 <div class="h1">这种话急急急急急急<div>&nbsp;</div></div>
console.log(str2);
4.3 简单判断是否为邮箱地址
// 调用 getIsEmail() 
// 参数1:邮箱号
const email = '[email protected]'
const isEmail = kaloo.getIsEmail(email)
// 输出 true
console.log(isEmail);
4.3.1 邮箱号加密简单处理
// 调用 getEmailCharCode()
// 参数1:邮箱号
const email = '[email protected]'
const emailCharCode = kaloo.getEmailCharCode(email)
// 输出 &#120&#105&#97&#111&#49&#52&#50&#50&#64&#102&#111&#120&#109&#97&#105&#108&#46&#99&#111&#109
console.log(emailCharCode);
4.3.2 邮箱号带 * 号简单处理
// 调用 getEmailWithCode()
// 参数1:邮箱号
const email = '[email protected]'
const emailWithCode = kaloo.getEmailWithCode(email)
// 输出 x*****m
console.log(emailWithCode);
4.4 判断是否为 11 位手机号
// 调用 getIsMobilePhone()
// 参数1:手机号
// 返回 布尔值
const phone = '12345678912'
const isPhone = kaloo.getIsMobilePhone(phone)
// 输出 true
console.log(isPhone);
4.4.1 手机号带 * 号简单处理
// 调用 getPhoneWithCode()
// 参数1(必选):手机号
// 参数2(可选):是否验证手机号为 11 位,默认 false
const phone = '12345678912'
const phoneWithCode = kaloo.getPhoneWithCode(phone)
// 输出 123****8912
console.log(phoneWithCode);
4.5 名字带 * 号处理
// 调用 getNameWithCode()
// 参数1(必选):名字
// 参数2(可选): true 代表首字加 * ; false 代表除首尾外都加 * ;默认 false
const me = '维生素'
const nameWithCode = kaloo.getNameWithCode(me, true)
// 输出 *生素
console.log(nameWithCode);

// Or
const nameWithCode = kaloo.getNameWithCode(me)
// 输出 维****素
console.log(nameWithCode);
4.6 身份证号带 * 号处理
// 调用 getIdNumWithCode()
// 参数1(必选):身份证号
// 参数2(可选): true 表示除首尾各4位外,中间全加 * , false 表示除了首4位外,其她全加 * ,默认 false
const meIdNum = '123456789012345678'
const idNumWithCode = kaloo.getIdNumWithCode(meIdNum, true)
// 输出 1234****5678
console.log(idNumWithCode);

// Or
const meIdNum = '123456789012345678'
const idNumWithCode = kaloo.getIdNumWithCode(meIdNum)
// 输出 1234********
console.log(idNumWithCode);
5 字符串 String
5.1 获取字符串的字节数
// 在GBK编码里,除了ASCII字符,其它都占两个字符宽
// 待获取字节数的字符串
const str2 = kaloo.HtmlUnEscape(str)
// 调用 getBytesLength 方法获取字节数
const length = kaloo.getBytesLength(str2)
// 输出 57
console.log(length);
5.2 字符串转 base64
// 调用 getBase64Encode()
// 参数1:字符串
const base64Str = kaloo.getBase64Encode(str2)
// 输出 JTNDZGl2JTIwY2xhc3M9JTIyaDElMjIlM0UlRTglQkYlOTklRTclQTclOEQlRTglQUYlOUQlRTYlODAlQTUlRTYlODAlQTUlRTYlODAlQTUlRTYlODAlQTUlRTYlODAlQTUlRTYlODAlQTUlM0NkaXYlM0UmbmJzcDslM0MvZGl2JTNFJTNDL2RpdiUzRQ==
console.log(base64Str);
5.3 base64 转字符串
// 调用 getBase64Decode()
const decodeStr = kaloo.getBase64Decode(base64Str)
// 输出 <div class="h1">这种话急急急急急急<div>&nbsp;</div></div>
console.log(decodeStr);
5.4 通过下标替换字符串
// 调用 getReplaceStrByIndex()
// 参数1(必选):字符串
// 参数2(必选):处于字符串的 n 位
// 参数3(必选):替换内容
const me = '维生素'
const replaceStrByIndex = kaloo.getReplaceStrByIndex(me, 1, 'III')
// 输出 III生素
console.log(replaceStrByIndex);
6 随机数 Random
6.1 生成随机数
// 调用 getRandom(min, max) 方法
// 第一个值(min):最小值
// 第二个值(max):最大值
const randomNum = kaloo.getRandom(0, 18)
// 随机输出 例:17
console.log(randomNum);
6.2 生成随机颜色
// 调用 getRandomColor(min, max) 方法
// 第一个值(min):最小值
// 第二个值(max):最大值
const randomColor = kaloo.getRandomColor(0, 255)
// 输出 rgb(64,148,55)
console.log(randomColor);
6.3 生成随机 UUID
// 调用 getRandomUUID()
// 无参数
const uuidStr = kaloo.getRandomUUID()
// 输出随机 例如: 816860769BFEF6B9DE1C27F2BF3908C0
console.log(uuidStr);
6.4 生成随机 n 位简单的的验证码
// 调用 getRandomCheckCode()
// 参数1:生成的位数
const checkCode = kaloo.getRandomCheckCode(6)
// 输出随机 例如: 724745
console.log(checkCode);
7 数字 Number
7.1 计算两数的百分比
// 调用 getPercent() 方法
// 参数1(必选):当前占有数
// 参数2(必选):总数
// 参数3(可选):是否返回 % 字符,默认 false
const percent = kaloo.getPercent(1, 10, true)
// 输出 10%
console.log(percent);
7.2 百分数转换成浮点数
// 调用 getPercentToFloat()
// 参数1(必选):百分数
const perToFloat = kaloo.getPercentToFloat('20.34%')
// 输出 0.2034
console.log(perToFloat);
7.3 计算 n ~ m 之间的所有自然数之和
// 调用 getSumFromNToM()
// 参数1(必选):起始值
// 参数2(必选):最终值
const nToM = kaloo.getSumFromNToM(1, 10)
// 输出 55
console.log(nToM);
开源协议
ISC