Ich arbeite an einer Übung codecademy.com, wo wir For-In-Anweisungen zu einem Objekt durchlaufen und Hallo in verschiedenen Sprachen drucken, indem Sie überprüfen, ob die Werte der Eigenschaften in Die Sprachen Objekt sind Zeichenketten mit typeof
JavaScript: mit typeof, um zu prüfen, ob Zeichenfolge
mein überprüfen, ob der Wert eine Zeichenfolge ist nicht funktioniert. meine Schleifen gibt mir dieses Ergebnis
english
french
notALanguage
spanish
Der Code
var languages = {
english: "Hello!",
french: "Bonjour!",
notALanguage: 4,
spanish: "Hola!"
};
// print hello in the 3 different languages
for(var hello in languages){
var value = hello;
if (typeof value === "string"){
console.log(value);
}
}
Dies sind die Anweisungen für die Übung
Objekte sind nicht so fremd, wenn Sie wirklich darüber nachdenken!
Denken Sie daran, Sie können den Typ einer Variablen herausfinden, indem Sie typeof myVariable verwenden. Typen, mit denen wir uns gerade beschäftigen, sind "Objekt", "String" und "Nummer".
Recall der for-Schleife in:
for (var x in obj) {executeSomething(); }
Dies wird durchlaufen alle Eigenschaften von obj eins nach dem anderen und zuweisen den Namen der Eigenschaft zu x bei jedem Lauf der Schleife.
Lassen Sie uns unser Wissen über diese beiden Konzepte kombinieren.
Untersuchen Sie das Sprachenobjekt. Drei Eigenschaften sind Zeichenketten, während Eins eine Zahl ist.
Verwenden Sie eine For-In-Schleife, um die drei Möglichkeiten auszudrücken, hallo zu sagen. In der Schleife sollten Sie überprüfen, ob der Eigenschaftswert eine Zeichenfolge ist, so dass Sie nicht versehentlich eine Zahl drucken.
Und die Frage ist ... – zerkms
ist es möglich, eine Frage ohne ein Fragezeichen (?) Und ohne Verwendung der typischen Syntax einer Frage zu stellen. Das OP zeigte, was mein Problem war, und zwei Personen, die antworteten (und alle Leute, die es aufgewertet hatten), verstanden es deutlich. – Leahcim
ja, Sie haben den Code und die entsprechende offensichtliche Ausgabe gegeben. Es ist eine gute Idee zu sagen, was Ihre * Erwartung war, da der Code einwandfrei funktioniert. – zerkms