Ich habe ein paar Probleme verstehen Variablen und Funktionen mit Fetch. Ich versuche, den Wert der Antwort vonJavascript - Response undefined fetch
.then(response => response.json())
zu
.then(lang => response['lang'].slice(-2)
passierte Aber ich bin die undefinierten Variable Antwort Fehler bekommen, so dass ich Referenzierung nicht die Variable korrekt. Wie lautet der richtige Aufruf?
Auch ich möchte beide Konsolen Protokolle aufrufen, das Stück Code unten tut das derzeit, aber ich denke nicht, dass ich Antwortfunktion überschreiben sollte, kann ich eine Funktion ohne Argumente oder die Befehle von selbst aufrufen?
.then(response => console.log(response['text']) & console.log(food))
console.log (response [ 'text']) & console.log (Lebensmittel)
fetch("https://localhost:8000", {method:"POST", body:fd})
.then(response => response.json())
.then(lang => response['lang'].slice(-2))
.then(food => "Temporary")
.then(function detectType(lang) {
switch(lang) {
case 'abc':
food = "Bananas";
break;
case 'def':
food = "Apples";
break;
default:
food = "Bananas";
break;
}})
.then(response => console.log(response['text']) & console.log(food))
.catch(err => console.error(err));
}
Warum haben Sie den Parameter der Funktion 'lang' benannt? Du tust nichts damit. Es sollte ".then (response => response ['lang']. Slice (-2))' (aber es ist egal, wie Sie den Parameter nennen). Parameter sind nur in der Funktion verfügbar, in der sie definiert sind. Siehe auch [Was ist der Gültigkeitsbereich von Variablen in JavaScript?] (Https://stackoverflow.com/q/500431/218196) –
Wenn ich das mit dem Parameter mache, dann Was würde passieren, wenn ich versuche, die Antwort ['text'] aufzurufen? Dies ist ein JSON-Wörterbuch mit der Art {'text': 'a', 'lang': 'b'} – Juanvulcano
Wenn Sie mit "call" einfach "access" meinen, wird die Zeichenfolge "a'" zurückgegeben. Beispiel: 'var foo = {text: 'a'}; console.log (foo ['text']); '. –