gpt4 book ai didi

javascript - 数组原型(prototype) TypeScript

转载 作者:行者123 更新时间:2023-11-28 04:59:19 28 4
gpt4 key购买 nike

我已经创建了自己的数组扩展,如下所示:

export interface Func<T, TResult> {
(item: T): TResult;
}

declare global {
interface Array<T> {
where(predicate: Func<T, boolean>): Array<T>;
single(predicate: Func<T, boolean>): T;
first(predicate: Func<T, boolean>): T;
take(predicate: Func<T, boolean>, count: number): Array<T>;
countWhere(predicate: Func<T, boolean>): number;
count(): number;
}
}

Array.prototype.count = function <T>(): number {
return this.length;
}

//others

在我的任何组件中,智能感知都会向我显示这些方法作为扩展,但在调试时我会遇到未定义的情况:

events: Event[];
var result = this.events.count();

我应该在哪里实现数组方法,以便它们可以从任何组件中可见?

最佳答案

以下是需要检查的事项...

  1. 是否加载包含扩展名的文件
  2. 是否以正确的顺序加载(即在使用之前)

在网络浏览器中打开开发人员工具(通常是 F12)并选择“网络”选项卡。

Example Network Tab (Stack Overflow)

运行您的应用程序并查看加载的 JavaScript 文件。

您可以检查包含 Array 扩展名的文件是否已加载 - 并且该文件是否在依赖于这些扩展名的文件之前加载。

关于javascript - 数组原型(prototype) TypeScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42280318/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com