Aprenda Lodash: _.dropWhile, remova itens de um array até que uma condição seja atendida
De acordo com a documentação do lodash, _.dropwWhile cria uma parte do array, excluindo os elementos removidos do início. Os elementos são removidos até que o predicado retorne falsey. O predicado é chamado com três argumentos: (value, index, array).
Isso é diferente de filter porque verifica cada item até que a condição seja atendida, como filtrar até encontrar uma correspondência; depois, para de fazer a verificação e retorna o restante do array, mesmo que haja itens mais adiante que possam atender à condição.
Argumentos
- array (Array): O array a ser verificado.
- predicate: Uma função que será executada a cada iteração.
Exemplo do mundo real
Você trabalha em uma concessionária de carros. Um homem chega e diz que não acredita que veículos elétricos existam. Você pretende provar que ele está errado. Você vai até o pátio e verifica o primeiro veículo. Ele usa gasolina... o cara está ficando convencido, então você verifica o segundo veículo, que também usa gasolina. Finalmente, você verifica o terceiro veículo e ele é elétrico.
Você removeu os dois primeiros itens enquanto eles não eram elétricos; embora possa haver veículos a gasolina mais adiante, você provou seu ponto e, neste caso, retornaria a lista de veículos restantes.
Exemplos
var users = [
{ "user": "barney", "active": false },
{ "user": "fred", "active": false },
{ "user": "pebbles", "active": true }
]
dropWhile(users, function(o) { return !o.active; })
➞ [{ "user": "pebbles", "active": true }]Observações
- Não tente importar lodash; você está simplesmente escrevendo sua própria versão.
- Toda esta série de desafios pode ser encontrada aqui.