Der Browser-Speicher localStorage ist nicht verfügbar. Entweder unterstützt dein Browser ihn nicht oder du hast ihn deaktiviert oder er ist voll. Ohne localStorage werden deine Lösungen nicht gespeichert.
Array: indexOf()
Mit der
indexOf
Methode kann man die Positions des übergebenen Elements innerhalb eines
Arrays bestimmen. Die Zählung beginnt mit 0:
let systems = ['Debian', 'Ubuntu', 'Mint'];
let i1 = systems.indexOf('Mint');
let i2 = systems.indexOf('Windows');
i1
erhält den Wert 2
, da 'Mint'
das 2te Element in
systems
ist. i2
erhält den Wert -1
.
Dieser Wert wird zurückgegeben, wenn sich das übergebene Element nicht im Array befindet.Aufgabe
Schreibe eine Funktion
Beispiel:
add
, die ein Array und ein Element entgegennimmt und das Element an das Ende des Arrays hängt.
Das Element soll aber nur dann angehängt werden, wenn es sich nicht schon im Array befindet. Das neue Array soll zurückgegeben werden. Beispiel:
add([1, 2], 3)
sollte [1, 2, 3]
und add([1, 2], 2)
sollte
[1, 2]
zurückgeben.
+ Tipp
function add(arr, elm) {
// ...
// Benutze if, indexOf() und push() um
// das Element dem Array ggf. hinzuzufügen.
// ...
return arr;
}
+ Lösung
function add(arr, elm) {
if (arr.indexOf(elm) === -1) {
arr.push(elm);
}
return arr;
}