Avatar ·

Wie überprüft man, ob eine Variable ein String in JavaScript ist?

Hallo zusammen! Ich habe gerade angefangen, JavaScript zu lernen, und bin auf ein Problem gestoßen. Ich habe eine Funktion, die ein Argument annimmt, und ich muss sicherstellen, dass es ein String ist, keine Zahl, kein Array oder etwas anderes. Ich habe `typeof` ausprobiert, aber es gibt manchmal seltsame Dinge zurück. Hier ist ein Beispiel meines Codes: ```javascript function processInput(input) { if (typeof input === 'string') { console.log('Das ist ein String!'); } else { console.log('Das ist kein String'); } } processInput('Hallo'); // funktioniert processInput(123); // funktioniert processInput(new String('Test')); // sagt "Das ist kein String", obwohl ich einen String erwartet habe ``` Im letzten Fall übergebe ich ein Objekt `new String('Test')`, und mein Code erkennt es als keinen String. Aber das ist doch auch ein String, nur in ein Objekt verpackt! Wie prüfe ich das richtig? Muss ich solche Fälle überhaupt berücksichtigen? Außerdem habe ich gehört, dass es Fallstricke mit `typeof null` gibt, das `"object"` zurückgibt. Was passiert, wenn eine Variable