Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Deh Bontempos

Arrays SEM numeros repetidos

Recommended Posts

Olas!

 

É simples. Imagine uma array com os numeros [4,5,7,8,8]

o 8 se repete.

 

Não existe um comando que extrai somente os numeros q não se repetem?

tipo array.comando[4,5,7,8,8] // 4,5,7,8

 

No meu caso, eis o código:

 

meses = [];for (i=0; i<arquivos.childNodes.length; i++) {	mes = arquivos.childNodes[i].attributes.mes;	meses.push(mes);}

isso retorna aquela sequencia q coloquei acima...mas queria q não repetisse numero igual.

Eu tentei fazer uma verificação antes do push, mas não fui feliz.

Alguém pode me ajudar?

 

Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se você quiser tirar números repetidos em geral dá uma olhada aqui.

 

Mas se quiser apenas tirar o último elemento da array use: array.pop();

 

Flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vixe, problema com o MXStudio, mas o link pro artigo é esse mesmo... Tá na parte de flash e chama ARRAYS. Tem vários exemplos de manipulação de arrays...Se quiser procurar o original vai no actionscript.org.Flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, valeu.

Era bom ter estes exemplos de array agora q comecei a mexer com elas :P

 

eu achei este truque mágico q pode ser útil

 

a=[3,4,5,2,2,3,6,7,1,1,8,2,3,8,5,5,3,1,"amigo","amiga","amigo","enemigo"]function elim_rep(b){   n = 0; b.sort();   while(n < b.length){b[n+1] == b[n] ? b.splice(n,1) : n++ }   return b}trace (elim_rep(a)); //1,2,3,4,5,6,7,8,amiga,amigo,enemigo

pra mim acho que funciona.

Eis o link

 

 

Abs ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

É bem o que estava lá no artigo mesmo, só que mais comprimido, hehe. Vou dar uma explicada pra esclarecer o que ele faz (e vou desmanchar o if também):

 

function elim_rep(b){   n = 0;//cria a var que servirá de "quia" para percorrer a array   b.sort();//organiza a array em ordem alfanumérica para que as entradas repetidas fiquem uma depois da outra   while(n < b.length){//enquanto o número do "guia" for menor do que o número total de elementos	  if (b[n] == b[n+1]) {//se o valor verificado atualmente for igual ao próximo (repetido)		 b.splice(n,1);//"recorte", exclua esse valor repetido	  } else {//caso não seja repetido		 n++;//aumente o "guia" para verificar o próximo registro	  }//depois de verificar todos os registros   return b;//retorne a array já arrumada}

Bom, é isso. :)

Abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.