Assignation/récupération d'un éléments
var arr = ['a','b','c']; arr[0] // récupérer le premier élément, la valeur 'a' arr[2] // récupérer le dernier élément, la valeur 'c' arr[arr.length-1] // dernier élément, la valeur 'c' arr[1] = 'bbb'; // assignation du deuxième élément arr[100] // assignation du 101 éléments, la taille du tableau est maintenant 101 (arr.length === 101)
Initialiser un tableau
function initArray(arr, length, value) { for(var i = 0; i < length; i++) { arr[i] = value; } } var a = initArray([], 10, false);
Exécuter une fonction pour chaque n items.
Array.prototype.forEachNItem = function(n,c) { for(var i = 0; i < this.length; i+=n) { c.apply(null, this.slice(i,i+n)); } }; // test: 6, 15, NaN (7+undefined+undefined is NaN) [1,2,3,4,5,6,7].forEachNItem(3, function(a,b,c) { console.log(a+b+c); })
Grouper par...
Array.prototype.groupN = function(n) { var r = []; for(var i = 0; i < this.length; i+=n) { r.push(this.slice(i,i+n)); } return r; }; // gives [ [1,2,3], [4,5,6], [7] ] [1,2,3,4,5,6,7].groupN(3); // with generator: function groupN(o,n) { var i=0; while(i < o.length) { yield o.slice(i,i+n); i+=n; } }; // example var t = groupN([1,2,3,4,5,6,7], 3); // gives [ [1,2,3], [4,5,6], [7] ] [ t.next(), t.next(), t.next() ]
Afficher l'élément différent
Soit les listes a et b, trouver le nombre qui est différent.
var a = [200,200,200,200,200,120,200,200,200]; var b = [100,250,100,100,100,100,100,100,100]; function countEach(arr) { var o = {}; arr.forEach(function(el) {el in o ? o[el]++ : o[el]=1 }); return o; } var o = countEach(a); for(var i in o) { if (o[i] == 1) { console.log(i); } } var o = countEach(b); for(var i in o) { if (o[i] == 1) { console.log(i); } }
Hyperliens...
Dernière modification: 2013-12-08 16:08:56 par Yan Morin
Hébergé par ProgYSM