Wenn Sie versuchen, das erste Zeichen im String-Array groß zu schreiben, warum funktioniert das nicht?

7

Ich bin ein Anfänger bei Javascript. Ich versuche eine Funktion zu schreiben, die zum Beispiel list-style-image in listStyleImage konvertiert.

Ich habe eine Funktion entwickelt, aber es scheint nicht zu funktionieren. Kann mir hier jemand auf das Problem hinweisen?

%Vor%     
Rafael Adel 12.10.2011, 16:48
quelle

7 Antworten

13

Sie müssen das Array-Element tatsächlich neu zuweisen:

%Vor%

Die Funktion "toUpperCase ()" gibt die neue Zeichenfolge zurück, ändert jedoch nicht das Original.

Sie sollten überprüfen, ob newArr[i] die leere Zeichenfolge zuerst ist, falls Sie eine Eingabezeichenfolge mit zwei aufeinanderfolgenden Bindestrichen erhalten.

edit - notiert SO Mitwirkender @lonesomeday weist richtig darauf hin, dass Sie auch den Rest jeder Zeichenfolge wieder ankleben müssen:

%Vor%     
Pointy 12.10.2011, 16:51
quelle
5

In Ihrer for -Schleife müssen Sie den Wert von newArr[i] ersetzen, anstatt ihn einfach auszuwerten:

%Vor%     
RoccoC5 12.10.2011 16:52
quelle
3

Hier ist meine Lösung mit ES6. Dies ist ein Beispiel, in dem ich die Wochentage in meinem Array ablege und sie mit for... of loop großlege.

%Vor%

Hier ist ein Link zur Dokumentation: für .. Schleifen-Dokumentation

    
Jagarmarten 29.12.2017 21:03
quelle
2

Sie brauchen das Array nicht, um einen Bindestrich und einen Kleinbuchstaben durch Großbuchstaben zu ersetzen -

%Vor%     
kennebec 12.10.2011 16:58
quelle
2

Sie müssen den Großbuchstaben im Array speichern. Bitte beachten Sie die modifizierte Schleife,

%Vor%     
Vivek Viswanathan 12.10.2011 16:59
quelle
2

Ein bisschen länger, aber es funktioniert im Grunde genommen mit Arrays:

%Vor%     
Jmorazano 21.01.2016 12:54
quelle
0
%Vor%     
Pre Vizsla 15.06.2017 03:50
quelle