This commit is contained in:
Philippe Torrel
2026-09-28 09:42:41 +02:00
parent 8a2d979830
commit 80296c10d0
6 changed files with 89 additions and 16 deletions
+24 -2
View File
@@ -1,4 +1,4 @@
<!DOCTYPE html>
<!doctype html>
<html lang="de">
<head>
<meta charset="UTF-8" />
@@ -35,7 +35,29 @@
['Russia', 'Moscow'],
];
const getCountryForCapital = () => {};
const getCountryForCapital = (capital) => {
for (const [country, countryCapital] of countriesWithCapital) {
if (countryCapital === capital) {
return country;
}
}
return undefined;
};
const getCountryForCapital2 = (capital) => {
const foundCountryAr = countriesWithCapital.find(
(arr) => arr[1].trim().toLowerCase() === capital.trim().toLowerCase(),
);
return foundCountryAr ? foundCountryAr[0] : undefined;
};
console.log('London:', getCountryForCapital2('London')); // => London: UK
console.log('London:', getCountryForCapital2('london')); // => London: UK
console.log('London:', getCountryForCapital2('')); // => London: undefined
console.log('Paris:', getCountryForCapital2('Paris')); // => Paris: France
console.log('Vienna:', getCountryForCapital2('Vienna')); // => Vienna: Austria
</script>
</body>
</html>
@@ -1,4 +1,4 @@
<!DOCTYPE html>
<!doctype html>
<html lang="de">
<head>
<meta charset="UTF-8" />
@@ -41,17 +41,42 @@
['Dratini', 'Dragonair', 'Dragonite'],
];
const stagesFor = (pokemon) => {};
const stagesFor = (pokemon) => {
const stages = evolutionStages.find((stages) => stages.includes(pokemon));
return stages ? stages : [];
};
const stagesAfter = (pokemon) => {};
const stagesAfter = (pokemon) => {
const stages = stagesFor(pokemon);
const index = stages.indexOf(pokemon);
const stagesBefore = (pokemon) => {};
// wenn nicht gefunden
if (index === -1) return [];
return stages.slice(index + 1);
};
const stagesBefore = (pokemon) => {
const stages = stagesFor(pokemon);
const index = stages.indexOf(pokemon);
// wenn nicht gefunden
if (index === -1) return [];
return stages.slice(0, index);
};
console.log(stagesFor('Bulbasaur')); // => undefined
console.log(stagesFor('Vulpix')); // => [ 'Vulpix', 'Ninetales' ]
console.log(stagesAfter('Dratini')); // => [ 'Dragonair', 'Dragonite' ]
console.log(stagesAfter('Bulbasaur')); // => undefined
console.log(stagesAfter('Dragonite')); // => []
console.log(stagesBefore('Pidgeot')); // => [ 'Pidgey', 'Pidgeotto' ]
console.log(stagesBefore('Dragonair')); // => [ 'Dratini' ]
console.log(stagesBefore('Pidgey')); // => [ ]
console.log(stagesBefore('Pidgey')); // => []
console.log(stagesBefore('Pidgeot')); // => ['Pidgey', 'Pidgeotto']
</script>
</body>
@@ -1,4 +1,4 @@
<!DOCTYPE html>
<!doctype html>
<html lang="de">
<head>
<meta charset="UTF-8" />
@@ -64,19 +64,19 @@
'Cucumber',
];
const isMixableWithMyIngredients = (cocktailRecipe) => {
/* ??? */
const isMixableWithMyIngredients = (cocktailRecipe, allIngredients = ingredientsFromMyBar) => {
return isMixableWith(cocktailRecipe, allIngredients);
};
const isMixableWith = (cocktailRecipe, availableIngredients) => {
return cocktailRecipe.every((ingredientFromRecipe) =>
hasIngredient(availableIngredients, ingredientFromRecipe)
hasIngredient(availableIngredients, ingredientFromRecipe),
);
};
const hasIngredient = (listOfIngredients, searchedIngredient) => listOfIngredients.includes(searchedIngredient);
// console.log(cocktailRecipes./* ??? */(isMixableWithMyIngredients));
console.log(cocktailRecipes.find((cocktailRecipe) => isMixableWithMyIngredients(cocktailRecipe)));
// => [ 'Vodka', 'Lime Juice', 'Apple Juice', 'Cucumber' ]
</script>
@@ -1,4 +1,4 @@
<!DOCTYPE html>
<!doctype html>
<html lang="de">
<head>
<meta charset="UTF-8" />
@@ -25,6 +25,30 @@
</main>
<script>
'use strict';
// async function fetchUsers() {
const fetchUsers = async () => {
try {
const response = await fetch('https://dummyjson.com/users');
if (!response.ok) {
throw new Error(`HTTP-Fehler: ${response.status}`);
}
const data = await response.json(); // HTTP-Response Body
// console.log(data.users);
return data;
} catch (error) {
console.error('Benutzer konnten nicht geladen werden:', error);
}
};
fetchUsers().then((data) => {
data.users.forEach((user) => {
const { firstName = '', lastName = '', age } = user;
console.log(`name: ${firstName}, lastname: ${lastName}, age: ${age}\n`);
});
});
</script>
</body>
</html>
@@ -41,9 +41,11 @@ F. Scott Fitzgerald
};
// JSON String
const jsonString = JSON.stringify(book, null, 2);
console.log(jsonString);
// JS Object
const bookObj = JSON.parse(jsonString);
console.log(bookObj.title); // => 'The Great Gatsby'
console.log(bookObj.author); // => 'F. Scott Fitzgerald'
</script>
@@ -28,14 +28,14 @@
try {
const response = await fetch('https://dummyjson.com/posts');
if (!response.ok) {
throw new Error('HTTP-Reponse Error');
throw new Error('HTTP-Response Error');
}
const data = await response.json();
return data; // Rückgabe ist async -> Promise
} catch (error) {
console.error('Fetch operation error: ', error);
// console.error('Fetch operation error: ', error);
throw error;
}