A je tu ďalší článok venovaný jednoduchému a hravému programovaniu. Tentoraz je zameraný na získanie skutočnej pozície prvku v poli a nie hodnoty vlastnosti index. Prvý príklad predstavuje najrýchlejšiu cestu ako získať požadovanú hodnotu.Príklad: Použitie metódy indexOf().
1
2
3
4
5
6
7
8
var array =["BMW", "Honda", "Audi", "Suzuki", "Mercedes", "Renault"];
function getPosition(arr, element){
var position = arr.indexOf(element)+ 1;
return position;
}
console.log(getPosition(array, "Audi"));
Príklad: Použitie cyklu while.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
var array =["BMW", "Honda", "Audi", "Suzuki", "Mercedes", "Renault"];
function getPosition(arr, element){
var i = 0;
while(arr[i] != element && i < arr.length){
i++;
}
var position =(i < arr.length)? i + 1 : -1;
return position;
}
console.log(getPosition(array, "Renault"));
Príklad: Vytváranie polyfillu metódy indexOf() s názvom getIndex().
1
2
3
4
5
6
7
8
9
10
11
12
13
14
var array =["BMW", "Honda", "Audi", "Suzuki", "Mercedes", "Renault"];
function getIndex(arr, element){
var i = 0;
while(arr[i] != element && i < arr.length){
i++;
}
var index =(i < arr.length)? i : -1;
return index;
}
console.log(getIndex(array, "BMW"));
Príklad: Polyfill metódy indexOf() s názvom getIndex()
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var array =["BMW", "Honda", "Audi", "Suzuki", "Mercedes", "Renault"];
Array.prototype.getIndex =function(element){
var arr = this;
var i = 0;
while(arr[i] != element && i < arr.length){
i++;
}
var index =(i < arr.length)? i : -1;
return index;
}
console.log(array.getIndex("Renault"));
Záver
Ako vidieť trošku som sa opäť vyhral. Vytvoril som vlastný polyfill metódy indexOf(). Kým prvé dva príklady vracajú skutočnú pozíciu prvku v poli (neprogramatickú), ďalšie dva príklady už vracajú hodnotu vlastnosti index. 30.4.2014, Matej LednárKategória: JavaScriptJavaScript,indexOf,polyfill,getIndex,getPositionŽiadna časť tohto článku nesmie byť reprodukovaná bez uvedenia autora a URL na túto stránku.Viac informácií nájdete v sekcii O projekte.