Ir para conteúdo
Fórum Script Brasil
  • 0

Funções next e prev para percorrer um array em javascript


Diego.G.A

Pergunta

Eu tive um problema em javascript no qual eu precisava percorrer um array

com chaves em strings, e o javascript não possui-a nenhuma função que tivesse esta

funcionalidade de percorrer um array, como o PHP possui.

E eu acabei por criar a função, e estou postando aqui o código, para

que todos possam utiliza-las.

// funções next prev para array
// FUNÇÂO next()
function next(arrayAtual,chaveArrayAtual) {
    var next;
    var u;
    var i = 0;
    for(var chave in arrayAtual) {
        if(chave == chaveArrayAtual) {
            var u = i;
            var next = i + 1;
            var prev = i - 1;
        }
        i++;
    }
    if(u == (arrayAtual.length - 1))
        u = 0;
    if(next == arrayAtual.length)
        next = 0;
    var y = 0;
    for(var key in arrayAtual) {
        if((u + 1) == next) {
            if(y == next)
                return key;    // retorna proxima chave do array
            y++;
        } else if(next == 0) {
            for(chave in arrayAtual)
                return chave; // retorna a primeira chave do array
        }
    }
}
// FUNÇÂO prev()
function prev(arrayAtual,chaveArrayAtual) {
    var i = 0;
    var prev;
    var u;
    for(var chave in arrayAtual) {
        if(chave == chaveArrayAtual) {
            var u = i;
            var prev = i - 1;
        }
        i++;
    }
    if(u == 0)
        u = arrayAtual.length;
    if(prev == -1)
        prev = arrayAtual.length - 1;
    var v = 0;
    for(var key in arrayAtual) {
        if((u - 1) == prev) {
            if(v == prev)
                return key;    // retorna a chave anterior do array,
                            // caso seja a ultima retorna a primeira
            v++;
        }
    }
}
///////////////////////////////////////////////////

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152.1k
    • Posts
      651.8k
×
×
  • Criar Novo...