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 🙏

© 2024 – Pkg Stats / Ryan Hefner

itc-utils

v1.0.2

Published

一个前端工具函数库

Downloads

6

Readme

一个前端工具函数库

工具函数目录

1. 从音频文件中解析出(专辑名称,歌手名称,专辑图片,采样率...)等详情信息 parseAudioInfo

使用方法:

/**
 * 
 * @param content 文件,form-data --- 通过本地上传后返回的file 或者 通过说通过<input type="file">返回的file
 * @returns promise {singer, base64String} 歌手,base64格式的专辑图片
 * @description 解析音频文件的详情(专辑名称,歌手名称,专辑图片...)
 */
 parseAudioInfo(content:any):Promise 
 resolve({
	name, // 歌曲名称
    album, // 专辑名称
    singer, // 歌手名称
    imageBase64, // 专辑图片
 })

2. 解析音频文件时长 parseAudioDuration

使用方法:

/**
 * 
 * @param content 文件 form-data  --- 通过本地上传后返回的file 或者 通过说通过<input type="file">返回的file
 * @returns promise {duration:number} 时长
 * @description 解析音频文件时长
 */
  // 使用new Audio解析音频文件,会比较快,但是对aac格式的文件解析不准确,相差还挺大
  // 使用new AudioContext解析音频文件,速度比较慢,但是对aac格式的文件解析准确。
parseAudioDuration(content:any):Promise
resolve({
    duration
})

3. 获取音频文件的内部信息(专辑名称,专辑图片,歌手,歌名等)与 音频文件的播放时长都获取

/**
 * @description 把秒钟转换成时分秒格式,为了尽量在切换npm包后不影响原项目的代码而保留该名称方法
 * @param second number 多少秒
 * @param isLimit 是否存在24小时的上限
 * @returns 返回 string 00:00:00
 */
getAudioFileTime(file:{raw:any},cb:()=>{})
return {
	...file,// 入参的文件
	album, // 专辑名称
	songName, // 歌曲名称
	singer, // 歌手名称
	imageBase64, // 图片
	time // 歌曲时长
}

4. 把秒钟转换成时分秒格式

/**
 * 
 * @param second number 多少秒
 * @param isLimit 是否存在24小时的上限
 * @returns 返回 string 00:00:00
 * @description 把秒钟转换成时分秒格式
 */
secondToTime(second:number,isLimit?:boolean):string

5. 把时间(00:00:00)转成秒钟

/**
 * 
 * @param time 00:00:00 格式的时间
 * @param num 返回的秒钟值是传入的格式时间的多少倍数,默认 1
 * @returns number 返回转换后的秒钟
 * @description 把时间(00:00:00)转成秒钟
 */
 timeToSecond(time:stirng,num=1):number

6. 判断基础类型 is

使用方法:

/**
 * 
 * @param val 待判断的值
 * @param type 判断的类型
 * @returns 返回 true or false
 */
is(val:unknown, type:string):boolean

7. 判断是否为undefined isDef

使用方法:

/**
 * 
 * @param val 待判断的值
 * @returns boolean
 */
isDef(val:unknown):boolean

8. 判断是否为对象 isObject

使用方法:

/**
 * 
 * @param val 待判断的值
 * @returns boolean
 */
isObject(val:any):boolean

9. 判断是否没有值 isEmpty

使用方法:

/**
 * 
 * @param val 待判断的值
 * @returns boolean
 */
isEmpty(val:unknown):boolean

10. 判断是否为Null或者undefined isNullAndUnDef

使用方法:

/**
 * 
 * @param val 待判断的值
 * @returns boolean
 */
isNullAndUnDef(val:unknown):boolean

11. 判断是否为url isUrl

使用方法:

/**
 * 
 * @param path 待判断的路径
 * @returns boolean
 */
isUrl(path:string):boolean

12. 把秒钟转换成时分秒格式,为了尽量在切换npm包后不影响原项目的代码而保留该名称方法

/**
 * 
 * @param second number 多少秒
 * @param isLimit 是否存在24小时的上限
 * @returns 返回 string 00:00:00
 * @description 把秒钟转换成时分秒格式
 */
convertSongDuration(second:number,isLimit?:boolean):string

12. 把时间(00:00:00)转成秒钟,为了尽量在切换npm包后不影响原项目的代码而保留该名称方法

/**
 * 
 * @param time 00:00:00 格式的时间
 * @param num 返回的秒钟值是传入的格式时间的多少倍数,默认 1
 * @returns number 返回转换后的秒钟
 * @description 把时间(00:00:00)转成秒钟
 */
 timeToSec(time:stirng,num=1):number