var arr = ['a', 'b', 'c', 'd', 'e', 'f'];
var point = 'c';
Comment puis-je diviser le "arr" en deux tableaux en fonction de la variable "point", comme :
['a', 'b']
et
['d', 'e', 'f']
var arr = ['a', 'b', 'c', 'd', 'e', 'f'];
var point = 'c';
Comment puis-je diviser le "arr" en deux tableaux en fonction de la variable "point", comme :
['a', 'b']
et
['d', 'e', 'f']
var arr2 = ['a', 'b', 'c', 'd', 'e', 'f'];
arr = arr2.splice(0, arr2.indexOf('c'));
Pour supprimer 'c' de arr2 :
arr2.splice(0,1);
arr contient les deux premiers éléments et arr2 contient les trois derniers.
Cela fait quelques hypothèses (comme arr2 contiendra toujours le «point» à la première affectation), ajoutez donc une vérification de l'exactitude pour les cas limites si nécessaire.
Partager cette fonction de commodité que j'ai fini par créer après avoir visité cette page.
function chunkArray(arr,n){
var chunkLength = Math.max(arr.length/n ,1);
var chunks = [];
for (var i = 0; i < n; i++) {
if(chunkLength*(i+1)<=arr.length)chunks.push(arr.slice(chunkLength*i, chunkLength*(i+1)));
}
return chunks;
}
Exemple d'utilisation :
chunkArray([1,2,3,4,5,6],2);
//returns [[1,2,3],[4,5,6]]
chunkArray([1,2,3,4,5,6,7],2);
//returns [[1,2,3],[4,5,6,7]]
chunkArray([1,2,3,4,5,6],3);
//returns [[1,2],[3,4],[5,6]]
chunkArray([1,2,3,4,5,6,7,8],3);
//returns [[1,2],[3,4,5],[6,7,8]]
chunkArray([1,2,3,4,5,6,7,8],42);//over chunk
//returns [[1],[2],[3],[4],[5],[6],[7],[8]]
var arr = ['a', 'b', 'c', 'd', 'e', 'f'];
var point = 'c';
Array.prototype.exists = function(search){
for (var i=0; i<this.length; i++) {
if (this[i] == search) return i;
}
return false;
}
if(i=arr.exists(point))
{
var neewArr=arr.splice(i);
neewArr.shift(0);
console.log(arr); // output: ["a", "b"]
console.log(neewArr); // output: ["d", "e", "f"]
}
Voici un exemple .
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.