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

@akiravoid/web-utilities

v1.0.6

Published

供 AkiraVoid 和 AkiraVoid Productions 使用的网页常用工具集。

Downloads

11

Readme

AkiraVoid 的网页工具函数集

目录

使用方法

  1. 通过 npm 或 yarn 使用:

    # npm
    npm install @akiravoid/web-utilities
    
    # yarn
    yarn add @akiravoid/web-utilities

    然后在 JavaScript 或 TypeScript 中导入:

    import * as Utilities from "@akiravoid/utilities";
    
    // 使用
    const list = new Utilities.List();
  2. 通过 <script> 标签引用:

    下载 JS 文件

    <!DOCTYPE html>
    <html lang="en">
        <head>
            <meta charset="UTF-8" />
            <meta http-equiv="X-UA-Compatible" content="IE=edge" />
            <meta
                name="viewport"
                content="width=device-width, initial-scale=1.0"
            />
            <title>AkiraVoid Utilities</title>
            <script src="/path/to/akiravoid.utilities.min.js"></script>
            <!-- 或者使用 CDN -->
            <script src="https://cdn.jsdelivr.net/npm/@akiravoid/web-utilities@latest/dist/akiravoid.utilities.min.js"></script>
        </head>
        <body></body>
    </html>

    在 JS 文件中使用:

    let list = new AkiraVoid.Utilities.List();

API 列表

List<T> 类

定义

表示一个强类型的对象列表。并提供访问和设置列表中元素、搜寻、排序和操作列表的函数。

类型参数

T:列表内元素的类型。

构造器

constructor(T[])

初始化一个新的 List<T> 实例。

参数:items: T[]

属性

Count { get; }:获取列表中元素数量。

Items { get; }:获取列表中所有元素组成的数组。

方法

| API | 描述 | | ------------------------------------------------------ | --------------------------------------------------------------------------- | | Get(number) | 获取指定位置的元素。 | | Set(number, T) | 设置指定位置的元素。 | | Add(T) | 在 List<T> 的末尾添加对象。 | | AddRange(T[]) | 将指定集合中的元素添加到 List<T> 的末尾。 | | Clear() | 将列表中的所有元素清除。 | | Contains | 检查列表中是否包含指定元素。 | | ConvertAll<TOutput>(Converter<T, TOutput>) | 将现有 List<T> 中的元素转换成另一个类型并返回一个包含转换后元素的新列表。 | | Distinct() | 去除列表中的重复项,并返回一个新的列表。 | | Exists(Predicate<T>) | 检查 List<T> 中是否包含满足指定条件的元素。 | | Find(Predicate<T>) | 在 List<T> 中查找第一个满足指定条件的元素。 | | FindAll(Predicate<T>) | 在 List<T> 中查找所有满足指定条件的元素。 | | FindIndex(Predicate<T>) | 在 List<T> 中查找第一个满足指定条件的元素的索引。 | | FindLast(Predicate<T>) | 在 List<T> 中查找最后一个满足指定条件的元素。 | | FindLastIndex(Predicate<T>) | 在 List<T> 中查找最后一个满足指定条件的元素的索引。 | | ForEach(Action<T>) | 对列表中每一个元素执行操作。 | | GetRange(number, number) | 从指定位置开始获取包含列表中的指定个数元素的列表副本。 | | IndexOf(T, [number = 0]) | 从列表指定位置开始向后查找指定元素的索引。 | | Insert(number, T) | 在列表指定位置插入元素。 | | InsertRange(number, T[]) | 在列表指定位置插入一组元素。 | | LastIndexOf(T, [number]) | 从列表指定位置开始向前查找指定元素的索引。 | | Remove(T) | 从列表中删除找到的第一个指定元素。 | | RemoveAll(Predicate<T>) | 从列表中删除所有符合条件的元素,并返回删除元素的个数。 | | RemoveAt(number) | 删除列表中指定位置的元素。 | | RemoveRange(number, number) | 删除列表中指定范围的元素。 | | Reverse() | 反转列表中元素的顺序。 | | Sort(), Sort(Comparision<T>), Sort(IComparer<T>) | 将列表中的元素按照指定规则比较大小,并按升序排序。 | | Take(number) | 从列表开头开始选取指定个数的元素,并返回新的列表。 | | TakeLast(number) | 从列表末尾开始选取指定个数的元素,并返回新的列表。 | | ToArray() | 将列表中的所有元素复制到新的数组。 | | TrueForAll(Predicate<T>) | 检查是否列表中的每一个元素都满足给定条件。 |

Listener 函数组

AddListener<TElement>(TElement, string, keyof HTMLEventMap | string, EventListenerOrEventListenerObject, [boolean | AddEventListenerOptions])

添加一个事件监听器。通过此函数添加监听器的同时会根据提供的 key 生成一个移除器,能确保不会有两个具有相同 key 的监听器被添加。

类型参数

TElement extends HTMLElement:要添加监听器的 DOM 元素的类型。

参数

target: TElement:要添加监听器的目标 DOM 元素。

key: string:监听器的 key。全局环境下该值是唯一的,任何具有相同 key 的监听器被添加均会导致原监听器被移除。

type: keyof HTMLEventMap | string:监听器类型。

listener: EventListenerOrEventListenerObject:监听器回调函数。

[options]: boolean | AddEventListenerOptions:监听器可选设置。

RemoveListener(string)

根据监听器的 key 来移除监听器。此函数仅对通过 AddListener 添加的监听器有效。

参数

key: string:监听器的 key

返回

如果移除成功则返回 true,否则返回 false