UNPKG

apply-hooks

Version:

A high-quality & reliable JavaScript Hooks library.

51 lines (50 loc) 1.7 kB
/** * append 列表尾部添加一个元素 * insert(pos, el) 向特定的位置插入一个元素 * get(pos) 获取对应位置的元素 * indexOf(el) 返回该元素在列表中索引 如果没有的话 直接返回-1 * update(pos) 修改某个位置的元素 * removeAt(pos) 从列表的特定位置移除一项 * remove(el) 从列表中移除一项 * isEmpty() 判断列表的元素是否为空 * size() 返回链表中元素个数 * toString 返回列表中元素,以字符串形式返回 * getAll 获取全部内容 */ declare class Node<T> { val: T; next?: Node<T> | null; constructor(val: T, next?: Node<T> | null); } export declare class LinkedList<T> { head: Node<T> | null; length: number; constructor(); append(val: T): boolean; insert(val: T, position?: number): boolean; getAll(): T[]; get(position: number): T | boolean; indexOf(val: T): number; update(position: number, val: T): boolean; removeAt(position: number): boolean | T; remove(val: T): boolean | T; isEmpty(): boolean; size(): number; toString(splitSign?: string): string; } export interface ILinkedList<T> { append: (val: T) => boolean; insert: (val: T, position?: number) => boolean; getAll: () => T[]; get: (position: number) => T | boolean; indexOf: (val: T) => number; update: (position: number, val: T) => boolean; removeAt: (position: number) => boolean | T; remove: (val: T) => boolean | T; isEmpty: () => boolean; size: () => number; toString: (splitSign: string) => string; _self: LinkedList<T>; } declare const useLinkedList: <T>() => ILinkedList<T>; export default useLinkedList;