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

all-tools

v1.0.1

Published

集成工具函数,方便大家使用

Downloads

3

Readme

JS函数工具库

如何安装使用

npm i all-tools

import {contact} from "all-tools"; 所有的函数都是通过解构赋值的方法取出来的。

功能文档

数组相关

1.contact函数 功能:合并多个数组, 调用:contact(arr1,arr2,arr3...).

2.every函数 功能:当数组中所有的项都满足回调函数的功能返回true,只要一个不满足就返回false 调用:every(arr,()=>{})

3.filter函数 功能:传入一个数组,不改变数组本身,返回一个新的数组。返回的新的数组的条件由回调函数定义 调用:filter(arr,()=>{});

4.find函数 功能:传入一个数组,返回数组中的你查找的那一项。 调用:find(arr,()=>{});

5.findIndex函数 功能:传入一个数组,返回数组中的你查找的那一项的位置。 调用:findIndex((arr)=>{});

6.map函数 功能:传入一个数组,遍历数组中的每一项,并且返回每一项的下标,不改变原数组。 调用:map((arr)=>{})

7.reduce函数 功能:传入一个数组,和一个初始值,返回一个新的数组,不改变原来的数组 调用:reduce(arr,()=>{},initValue);

8.slice函数 功能:传如一个数组,开始值和结束值,如果数组为空,返回一个空的数组,如果开始值不传则从零开始。 结束值不传为数组的长度。如果结束值大于了数组的长度则返回空数组。返回一个新的数组。主要做数组的截取。 调用:slice(arr,0,5);

9.some函数 功能:当数组中有一项满足回调函数的功能返回true,都不满足就返回false; 调用:some(arr,()=>{});

函数方法

10.apply函数 功能:传入一个函数,一个对象,和一个数组的值,改变这个函数的this指向,指向这个对象。 调用:apply(fn, obj, args);

11.bind函数 功能:创建一个新的函数,可以在函数里面直接传递参数,也可收函数的参数 调用:bind(fn, obj, args);

12.call函数 功能:传入一个函数,一个对象,和多个值,改变这个函数的this指向,指向这个对象。 调用:call(fn, obj, ...args)

13.chunk函数 功能:传入一个数组,和需要切割的数字。返回给你一个多维的数组,不改变原数组,返回一个新的数组。 调用:chunk(arr,size);

14.debounce函数 功能:防抖函数 调用:debounce(callback,wait);

15.difference函数 功能:主要是处理两个数组之间的差集。返回的是第一个数组中,不包含第二个数组中的元素,不改变原数组。 调用:difference(arr1,arr2);

16.drop函数 功能:从这个数组的左边开始过滤这个数组,返回这个数组,不改变原数组。 调用:drop(arr,size)

17.dropRight函数 功能:从这个数组的右边开始过滤这个数组,返回这个数组,不改变原数组。 调用:dropRight(arr,size)

18.flatten函数 功能:数组拍平,不改变原来的数组,返回一个新的数组. 调用:flatten(arr);

19.flatten1函数 功能:数组拍平,不改变原来的数组,返回一个新的数组,与上一个函数功能一样,实现方式不同. 调用:flatten1(arr);

20.pull函数 功能:删除原数组与value相同的元素,返回删除的元素. 调用:pull(arr,args);

21.pullAll函数 功能:与pull一样,只是参数为数组 调用:pullAll(arr,[]);

22.throttle函数 功能: 节流函数 调用:throttle(arr,wait);

23.unique函数 功能: 数组去重 调用:unique(arr);

24.unique1函数 功能: 数组去重,与上述方法一样,内部实现不同,较上面性能好,推荐使用. 调用:unique1(arr);

25.unique2函数 功能: 数组去重,与上述方法一样,内部实现不同,较上面性能好,推荐使用.主要用了es6的语法 调用:unique2(arr);

对象相关

26.clone函数 功能:对象浅拷贝,这个是es6实现的 调用:clone(target);

27.clone1函数 功能:对象浅拷贝,这个基于es5 调用:clone1(target);

28.deepClone函数 功能:对象深拷贝.(慎用)不能拷贝方法,不能解决 循环引用 调用:deepClone(target);

29.deepClone1函数 功能:对象深拷贝.递归拷贝,不能解决循环引用 调用:deepClone1(target)

30.deepClone2函数 功能:对象深拷贝.递归拷贝,解决循环引用 调用:deepClone2(target)

31.deepClone3函数 功能:对象深拷贝.递归拷贝,优化数组和对象拷贝 调用:deepClone3(target)

32.mergeObject函数 功能:合并对象 调用:mergeObject(args)

33.myInstanceOf函数 功能:不用new的方式生成对象 调用:myInstanceOf(obj, Fn)

34.newInstance函数 功能:检测方式是不原型对象的方法,类似于instanceof; 调用:newInstance(fn,...args);

35.palindrome函数 功能:检测是否回文数 调用:palindrome(str);

36.reverseString函数 功能:反转字符串 调用:reverseString(str);

37.turnCate函数 功能:字符串截取 调用:turnCate(str,size) size为截取的长度 显示...

1.0.1 添加函数方法

1.变量的类型检测 2.时间函数的格式化

大家有什么好的函数实现方式可以发我邮箱[email protected];