encontrar el primer elemento de una matriz usando un filtro:
function first<T>(arr: T[], filter: (v: T) => boolean): T {
let result: T;
return arr.some(v => { result = v; return filter(v); }) ? result : undefined;
}
en JavaScript claro:
function first(arr, filter) {
var result;
return arr.some(function (v) { result = v; return filter(v); }) ? result : undefined;
}
Y del mismo modo, indexOf:
a máquina:
function indexOf<T>(arr: T[], filter: (v: T) => boolean): number {
let result: number;
return arr.some((v, i) => { result = i; return filter(v); }) ? result : undefined;
}
En javascript normal:
function indexOf(arr, filter) {
var result;
return arr.some(function (v, i) { result = i; return filter(v); }) ? result : undefined;
}
'var a = []; a [7] = 'foo'; alerta (a [0]); ' – Petah
Esto supone que el primer elemento de la matriz siempre tiene un índice de 0. Usted sabe lo que dicen sobre la suposición ... – Andy
@Andy No hubo suposiciones, ya que la pregunta de OP era bastante claro y específico. –