m323/03/PureOrNotPure.md

2.7 KiB

Pure or not Pure

Aufgabe Nur ein Rückgabewert Resultat nur Abhängig von übergebenen Parametern Verändert keine existierenden Werte pure oder impure
1.1 Ja Nein Nein impure
1.2 Ja Ja Ja pure
1.3 Ja ja Ja pure
1.4 Ja Nein Ja impure
1.5 Ja Ja Ja pure
1.6 Ja Ja Nein impure

Aufgabe 1.1

function addToCartItems(items, item) {
  return [...items, item];
}

let cartItems = [];
cartItems = addToCartItems(cartItems, "Apple");
console.log(cartItems); // Ausgabe: ['Apple']
cartItems = addToCartItems(cartItems, "Banana");
console.log(cartItems); // Ausgabe: ['Apple', 'Banana']
cartItems = addToCartItems(cartItems, "Orange");
console.log(cartItems); // Ausgabe: ['Apple', 'Banana', 'Orange']

Aufgabe 1.2

function add(a, b) {
  return a + b;
}

console.log(add(5, 3)); // Ausgabe: 8
console.log(add(2, 4)); // Ausgabe: 6

Aufgabe 1.3

function firstCharacter(str) {
  return str.charAt(0);
}

console.log(firstCharacter("Hello")); // Ausgabe: H
console.log(firstCharacter("JavaScript")); // Ausgabe: J

Aufgabe 1.4

// Methode, um eine Zahl mit einem zufälligen Wert zu multiplizieren
function multiplyWithRandom(number, randomValue) {
  return number * randomValue;
}

console.log(multiplyWithRandom(5, Math.random())); // Ausgabe: Eine zufällige Zahl zwischen 0 und 5
console.log(multiplyWithRandom(10, Math.random())); // Ausgabe: Eine zufällige Zahl zwischen 0 und 10

Aufgabe 1.5

// Funktion zum Teilen einer Zahl durch eine andere
function divideNumbers(dividend, divisor) {
  return dividend / divisor;
}

console.log(divideNumbers(10, 2)); // Ausgabe: 5
console.log(divideNumbers(8, 4)); // Ausgabe: 2

Aufgabe 1.6

// Methode zum Ausgeben und Rückgeben einer Zeichenkette
function printAndReturnString(str) {
  return str; // Rückgabe der Zeichenkette
}

console.log(printAndReturnString("Hello")); // Ausgabe: Hello