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

xyutils

v1.0.6

Published

font end utils

Readme

xyutils

npm Build Status LICENSE MIT

业务开发过程中,会经常用到日期格式化url参数转对象浏览器类型判断节流函数等常用函数

usage

$ npm install --save-dev xyutils
  • 直接下载min目录下的xyutils.min.js使用,支持UMD通用模块规范
  <script src="xyutils.min.js"></script>
  <script>
      var OS = xyutils.getOS()
  </script>

webpack、RequireJS、SeaJS等

// 完整引入
const xyutils = require('xyutils')
const OS = xyutils.getOS()

按需引入

// 只引入部分方法('xyutils/<方法名>')
const getOS = require('xyutils/getOS')
const OS = getOS()
// es6
const {getOS} from 'xyutils'
const OS = getOS()

API文档

Array

  • arrayEqual 判断两个数组是否相等
  • arrayContains 检查数组中是否含有某元素
  • arrayDescendeSort 将数组进行递减排序
  • arrayIncreaseSort 将数组进行递增排序

Class

  • addClass 为元素添加class
  • hasClass 判断元素是否有某个class
  • removeClass 为元素移除class

Cookie

  • getCookie 根据name读取Cookie
  • removeCookie 根据name删除Cookie
  • setCookie 添加Cookie

Device

  • getExplore 获取浏览器类型和版本号
  • getOS 获取操作系统类型
  • addFavorite 加入收藏夹
  • getMobileScreenWidth 获取移动设备屏幕宽度
  • isAndroidMobileDevice 判断是否安卓移动设备访问
  • isAppleMobileDevice 判断是否苹果移动设备访问
  • isMobile 判断是否移动设备
  • isMobileUserAgent 判断是否移动设备访问
  • setHomepage 设为首页

Dom

  • getScrollTop 获取滚动条距顶部的距离
  • offset 获取一个元素的距离文档(document)的位置,类似jQ中的offset()
  • scrollTo${duration}时间内,滚动条平滑滚动到${to}指定位置
  • setScrollTop 设置滚动条距顶部的距离
  • windowResize H5软键盘缩回、弹起回调

Function

  • debounce 函数防抖
  • throttle 函数节流

Keycode

  • getKeyName 根据keycode获得键名

Object

  • deepClone 深拷贝,支持常见类型
  • isEmptyObject 判断Object是否为空

Random

  • randomColor 随机生成颜色
  • randomNum 生成指定范围随机数

Regexp

  • isEmail 判断是否为邮箱地址
  • isIdCard 判断是否为身份证号
  • isPhoneNum 判断是否为手机号
  • isTel 验证是否为有效的座机电话号码
  • isUrl 判断是否为URL地址

String

  • digitUppercase 现金额转大写

Support

  • isSupportWebP 判断浏览器是否支持webP格式图片

Time

  • formatPassTime 格式化${startTime}距现在的已过时间
  • formatRemainTime 格式化现在距${endTime}的剩余时间
  • isSameDay 判断是否为同一天
  • getDate 获取最近的日期
    • getDate().DATE_TODAY: 今天
    • getDate().DATE_YESTERDAY: 昨天
    • getDate().DATE_1_WEEK_BEFORE: 最近一周
    • getDate().DATE_2_WEEKS_BEFORE: 最近两周
    • getDate().DATE_3_WEEKS_BEFORE: 最近三周
    • getDate().DATE_1_MONTH_BEFORE: 最近一个月
    • getDate().DATE_2_MONTH_BEFORE: 最近两个月
    • getDate().DATE_3_MONTHS_BEFORE: 最近三个月
    • getDate().DATE_1_YEAR_BEFORE: 一年前
    • getDate().DATE_3_MONTHS_AFTER: 未来三个月
    • getDate().DATE_1_YEAR_AFTER: 未来一年
    • getDate().DATE_FIRST_DAY_OF_MONTH: 元旦
    • getDate().DATE_LAST_DAY_OF_MONTH: 本月的最后一天

Url

  • parseQueryString url参数转对象
  • stringfyQueryString 对象序列化
  • removeUrlPrefix 去掉url前缀