Skip to content

teles/array-mixer

Repository files navigation

ArrayMixer


Build Status npm

Tabela de conteúdos

Reordene grupos de vetores de forma simples e personalizada.

const animals = ["Alligator", "Bear", "Cat", "Dog", "Elephant"];
const colors =  ["Amber", "Blue", "Cyan", "Dim Gray", "Emerald"]; 

Use o ArrayMixer para ter uma lista misturando esses vetores de forma personalizada. Assim:

let mixedArray = ArrayMixer({A: animals, C: colors}, ["3A", "2C"]);  

Onde mixedArray irá conter:

["Alligator", "Bear", "Cat", "Amber", "Blue"];

Instalação

Adicione ArrayMixer ao seu projeto npm:

npm install array-mixer

Importe ArrayMixer ao seu código ES6:

import ArrayMixer from "array-mixer";

Ou importe o no seu projeto ES5:

<script src="path/to/your/array-mixer-dir/release/array-mixer.es5.min.js"></script>

Parâmetros

ArrayMixer é uma função javascript que espera dois parâmetros obrigatórios.

ArrayMixer(parâmetro1, parâmetro2);

> parâmetro1 (Apelidos para vetores existentes)

Lembra do exemplo com animais e cores ? Supondo que ainda temos essas variáveis o parâmetro1 é um objeto javascript. As propriedades desse objeto são apelidos para os vetores e seus valores apontam para os vetores originais. Assim:

{C: colors, A:animals}

> parâmetro2 (A sequência esperada pro seu novo vetor)

Continuando no mesmo exemplo, vamos supor que você precise de 2 itens de cada um desses vetores. O parâmetro2 é onde você define isso. Assim:

["2C", "2A"]

Juntando ambos os parâmetros fica assim:

ArrayMixer({A: animals, C: colors}, ["2C", "2A"]);  

Exemplos de aplicação

Misturar animais e cores é um exemplo com finalidade puramente didática. No entanto no mundo real outras aplicações para ArrayMixer são simples de encontrar.

Exemplo 1) Para cada 7 fotos exiba um anúncio

ArrayMixer({F: fotos, A: anuncios}, ["7F", "A"]);            

Exemplo 2) Para cada 4 parágrafos de texto inclua duas imagens

ArrayMixer({P: paragrafos, I: imagens}, ["4F", "2A"]);            

Exemplo 3) Em um grupo de 8 links relacionados reserve as posiçÕes 5 e 6 para links patrocinados

ArrayMixer({R: relacionados, P: patrocinados}, ["4R", "2P", "2R"]);            

Exemplo 4) Exiba uma lista de músicas incluindo as de mais sucesso a cada 10 músicas

ArrayMixer({M: musicas, S: sucessos}, ["10M", "2S"]);            

Exemplo 5) Você também pode usar apelidos maiores e o object shorthand do ES6

ArrayMixer({dias, fds}, ["5dias", "2fds"]);            

Você pode manipular mais de dois vetores de uma vez só, como no exemplo seguinte:

Exemplo 6) Exiba fotos de cachorrinhos, gatinhos e pinguins na sequência

ArrayMixer({cachorrinhos, gatinhos, pinguins}, ["cachorrinhos", "gatinhos", "pinguins"]);            
  • Os vetores mencionados nos exemplos precisam existir para os exemplos funcionem.

Licença

MIT - Jota Teles - 2017

About

Powerful, super tiny and easy to use lib to reorder your javascript arrays.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •