Kennt jemand eine Javascript-Bibliothek (z. B. Unterstrich, jQuery, MooTools usw.), die eine Methode zum Inkrementieren eines Buchstabens bietet?
Ich möchte in der Lage sein, etwas zu tun wie:
"a"++; // would return "b"
javascript
increment
alphabetical
andyzinsser
quelle
quelle
Antworten:
Einfache, direkte Lösung
Wie andere angemerkt haben, besteht der Nachteil darin, dass Fälle wie der Buchstabe 'z' möglicherweise nicht wie erwartet behandelt werden. Aber es kommt darauf an, was Sie davon wollen. Die obige Lösung gibt '{' für das Zeichen nach 'z' zurück, und dies ist das Zeichen nach 'z' in ASCII. Je nach Anwendungsfall kann dies das gewünschte Ergebnis sein.
Einzigartiger Stringgenerator
(Aktualisiert am 09.05.2019)
Da diese Antwort so viel Sichtbarkeit erhalten hat, habe ich beschlossen, sie etwas über den Rahmen der ursprünglichen Frage hinaus zu erweitern, um potenziell Menschen zu helfen, die von Google darauf stoßen.
Ich finde, dass ich oft etwas möchte, das sequentielle, eindeutige Zeichenfolgen in einem bestimmten Zeichensatz generiert (z. B. nur Buchstaben verwendet). Deshalb habe ich diese Antwort aktualisiert, um eine Klasse aufzunehmen, die dies hier tut:
Verwendung:
quelle
Einfaches Javascript sollte den Trick machen:
quelle
Was ist, wenn der angegebene Buchstabe z ist? Hier ist eine bessere Lösung. Es geht A, B, C ... X, Y, Z, AA, AB, ... usw. Grundsätzlich werden Buchstaben wie die Spalten-IDs einer Excel-Tabelle inkrementiert.
nextChar ('yz'); // gibt "ZA" zurück
quelle
if (same(u,'Z')){
zuif (u == 'Z'){
und es funktioniert perfekt, danke!same(str,char)
dort nicht eingefügt wurde? Ich weiß nicht.same()
ist eindeutig eine benutzerdefinierte Funktion. Na==
ja , funktioniert, und wenn ich super sicher sein wollte, könnte ich es verwenden===
, aber ich habe es getestet und es ist in Ordnung. Danke noch einmal!Ein möglicher Weg könnte wie unten definiert sein
quelle
Sie können dies versuchen
Konvertieren Sie es zuerst in eine Ascii-Zahl. Inkrementieren Sie es. Konvertieren Sie es dann von Ascii in char.
Überprüfen Sie FIDDLE
quelle
Ich musste mehrere Buchstabenfolgen verwenden und habe diese Funktion basierend auf dieser SO-Frage erstellt. Ich hoffe das kann anderen helfen.
Wie man es benutzt:
Sehen Sie sich diese funktionierende Demo an
quelle
Fügen Sie all diese Antworten hinzu:
Beispiel: http://jsfiddle.net/pitaj/3F5Qt/
quelle
Dieser funktioniert gut:
quelle
Eine Lösung nur zum Lachen
quelle
Das ist wirklich alt. Aber ich brauchte diese Funktionalität und keine der Lösungen ist für meinen Anwendungsfall optimal. Ich wollte a, b, c ... z, aa, ab ... zz, aaa ... erzeugen. Diese einfache Rekursion erledigt den Job.
quelle
Erstellen Sie eine Funktion mit {a: 'b', b: 'c' usw.} in einem Abschluss: -
Verwendung:-
Hinzufügen von Großbuchstaben und Ziffern: -
ps In einigen Versionen von Javascript können Sie
[...chars]
anstelle von verwendenchars.split('')
quelle
Hier ist eine Variation des rot13-Algorithmus, den ich unter https://stackoverflow.com/a/28490254/881441 eingereicht habe :
Der Eingabecode unten und der nachgeschlagene Codec befinden sich oben (dh der Ausgabecode ist der gleiche wie der Eingabecode, jedoch um 1 verschoben). Die Funktion ändert nur Buchstaben, dh wenn ein anderes Zeichen übergeben wird, bleibt es von diesem Codec unverändert.
quelle
quelle
Basierend auf @ Nathan Wand Antwort Inkrementieren und Dekrementieren
Verwendung
quelle