feat: webseite-js
This commit is contained in:
61
02_advanced/uebungen/u11_pyramide-break/index.js
Normal file
61
02_advanced/uebungen/u11_pyramide-break/index.js
Normal file
@@ -0,0 +1,61 @@
|
||||
// Variante 1
|
||||
|
||||
const sentence = 'Dies ist eine Übung um der callback Hölle zu entkommen.';
|
||||
|
||||
const printWords = (sentence) => {
|
||||
const wordArr = sentence.split(' ');
|
||||
|
||||
for (let i = 0; i < wordArr.length; i++) {
|
||||
setTimeout(() => {
|
||||
console.log(wordArr[i]);
|
||||
}, 1000 * i);
|
||||
}
|
||||
};
|
||||
|
||||
const printWordsRek = (sentence, idxWort = 0) => {
|
||||
const wordArr = sentence.split(' ');
|
||||
|
||||
// Basis-Fall
|
||||
if (idxWort >= wordArr.length) {
|
||||
return '';
|
||||
}
|
||||
|
||||
// rekursiver mist :)
|
||||
setTimeout(() => {
|
||||
printWordsRek(sentence, idxWort + 1);
|
||||
}, 1000);
|
||||
|
||||
// Ausgabe des Wortes
|
||||
console.log(wordArr[idxWort]);
|
||||
};
|
||||
|
||||
printWords(sentence);
|
||||
printWordsRek(sentence);
|
||||
|
||||
// setTimeout(() => {
|
||||
// console.log('The');
|
||||
|
||||
// setTimeout(() => {
|
||||
// console.log('pyramid');
|
||||
|
||||
// setTimeout(() => {
|
||||
// console.log('of');
|
||||
|
||||
// setTimeout(() => {
|
||||
// console.log('doom');
|
||||
|
||||
// setTimeout(() => {
|
||||
// console.log('keeps');
|
||||
|
||||
// setTimeout(() => {
|
||||
// console.log('growing.');
|
||||
// }, 1000);
|
||||
// }, 1000);
|
||||
// }, 1000);
|
||||
// }, 1000);
|
||||
// }, 1000);
|
||||
// }, 1000);
|
||||
|
||||
// Übung 11: Die Pyramide abbrechen
|
||||
|
||||
// Schreibe das Codebeispiel 96 so um, dass keine Pyramide entsteht. Benutze dazu, wie im Text angedeutet, eine Funktion, die das n-te Wort ausgibt und sich per setTimeout(…) mit n + 1 als Parameter aufruft, solange noch Wörter im Satz vorhanden sind.
|
||||
Reference in New Issue
Block a user