Quickpost: jQuery e o grep fora do shell. Comment
Olá Amigos!
Numa das minhas andadas à documentação de jQuery, me deparei com um método assim, com um nome um tanto comum para quem está acostumado a trabalhar com *nix/Shell e estranho, alheio para usuários de outros sistemas. Vamos arar a terra:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Usando jQuery.grep</title> <script type="text/javascript" src="/js/web/jquery_142_dev.js"></script> </head> <body> <div id="conteudo"></div> </body> </html>
Agora o javascript:
<script type="text/javascript">
$(document).ready(function(){
var contas = ( '34.99, 1203, 450, 320.99, 14.00, .89, 2999.99' ).split(', ');
var novasContas = $.grep( contas, function(v, i ){
return v < 500;
});
$( '#conteudo' ).html( '<table border="1"><tr><td>'+ novasContas.join('</td><td border="1">') +'</td></tr></table>' );
});
</script>
Esta função assemelha-se à $.each(), a qual recebe um Array no primeiro parâmetro e um Callback no segundo. A sacada está no condicional de retorno. A função de Callback tem dois parâmetros, o valor e o índice do vetor respectivamente. No nosso caso, retornaremos o valor do Array caso ele seja menor que 500. A var novasContas recebe o retorno de $.grep que é sempre um vetor de todos os valores que passam pela condicional. No final, montamos uma tabela dentro da div com nossos novos valores, agregados numa String a partir da função join. Lembrando que você também pode passar como primeiro parâmetro o retorno de métodos seletores, do tipo $.( ‘pai > filhos’ ). Obrigado pela visita e espero ter ajudado. Dúvidas? Siga-me no twitter, envie um email ou deixe um comentário. Para o alto e Davanti!