为什么Array.prototype.findIndex()定义不包含索引和对象,而Array.prototype.find()呢?
find(predicate: (value: T, index: number, obj: Array<T>) => boolean, thisArg?: any): T;
findIndex(predicate: (value: T) => boolean, thisArg?: any): number;
我一直收到这个错误:
类型的参数&#39;(v:number,i:any,a:any)=&gt;布尔&#39;不能分配给&#39;(value:number)=&gt;类型的参数布尔&#39 ;. (参数)v:数字
当我像这样使用它时:
arr.findIndex( (v, i, a) => {/*..*/} )
我应该编辑.d.ts文件吗?
答案 0 :(得分:0)
这似乎是标准定义中的“错误”。 根据规范,它采用标准的阵列谓词函数:https://tc39.github.io/ecma262/#sec-array.prototype.findindex
我会在typescript的github上创建一个bug报告,并使用正确的签名在本地重载findIndex
。