Heim >Web-Frontend >js-Tutorial >Zählen mit einem willkürlichen Zeichensatz
Kernpunkte
In diesem Artikel wird eine einfache und flexible willkürliche Zählungstechnik vorgestellt. Obwohl diese Technik bei Bedarf nicht oft erforderlich ist, werden Sie feststellen, dass die integrierten Funktionen von JavaScript nicht vollständig erledigen können. JavaScript verfügt über integrierte Funktionen zum Parsen und Umwandeln von Zahlen zwischen verschiedenen numerischen Kardinalitäten. Beispielsweise kann die parseInt
-Methode jede Kardinalität (numerische Kardinalität) von 2 bis 36 verarbeiten und wird normalerweise für die numerische Umwandlung und Zählung von nicht dezimaler Kardinalität verwendet. Number.toString
Methode kann die Konvertierung umkehren und Dezimalzahlen in nicht dezimaler numerischer Zeichenfolge umwandeln:
var character = "2F"; alert(parseInt(character, 16)); // 弹出 47 var number = 47; alert(number.toString(16)); // 弹出 "2F"
Aber was ist, wenn Sie mit Klingonnummern zählen möchten? Oder wahrscheinlicher, verwenden Sie griechische oder kyrillische Buchstaben, Hieroglyphen oder eine Art Rune? Die Technik, die ich demonstrieren werde, kann dies mit Präzision in jeder numerischen Kardinalität tun.
Glossar ist entscheidend
Zunächst müssen wir ein Vokabular definieren, das Wörterbuch der Zeichen verwenden, die als eine einzelne Reihe von Unicode -Escape -Sequenzen definiert werden. In diesem Fall haben wir 16 griechische Kapitalbuchstaben von Alpha bis PI - jede Zahl wird durch einen Buchstaben dargestellt, und die Länge der gesamten Zeichenfolge bestimmt die numerische Basis:
var lexicon = "u0391u0392u0393u0394u0395u0396u0397u0398u0399u039au039bu039cu039du039eu039fu03a0";
Escape -Sequenz ist ein Zeichen
Es ist erwähnenswert, dass auch wenn sechs Tippzeichen für die Definition einer Unicode -Escape -Sequenz benötigt werden, es als nur ein Zeichen in der Zeichenfolge erscheint, sodass die Vokabularlänge 16 Zeichen beträgt. Sobald wir ein Wortschatz haben, können wir String.charAt
verwenden, um Zeichen nach Zahlenindex zu zitieren.
var character = "2F"; alert(parseInt(character, 16)); // 弹出 47 var number = 47; alert(number.toString(16)); // 弹出 "2F"
Daher basieren alle von uns durchgeführten Berechnungen auf beiden Methoden. Lassen Sie uns beispielsweise eine Schleife definieren, "κ" Iterationen ausführen und jedes Zeichen dazwischen auflisten:
var lexicon = "u0391u0392u0393u0394u0395u0396u0397u0398u0399u039au039bu039cu039du039eu039fu03a0";
Aber was ist mit größeren Zahlen, wie z. B. Zeichenäquivalenten, die 23 zeigen? Wir müssen nur die einzelnen Zahlen extrahieren und dann das Zeichenäquivalent erhalten, in diesem Fall 2 und 3:
var number = lexicon.indexOf("u0398"); // "Θ" 的十进制等价物 var character = lexicon.charAt(7); // 7 的字符等价物
, um die Dinge interessanter zu machen, was ist, wenn die Nummer, die wir konvertieren, Buchstaben und Zahlen enthält, wie die Hexadezimalnummer "2f"? In diesem Fall müssen wir jede Zahl separat konvertieren, weil wir uns nicht mit dem hexadezimalen Index auf die Zeichen verweisen können (d. H. lexicon.charAt("F")
muss lexicon.charAt(15)
werden):
var str = ""; for(var i=0; i<lexicon.indexOf("u039a"); i++) { str += lexicon.charAt(i); } alert(str);
Natürlich sind die letzten beiden Beispiele recht einfach, da die Anzahl der Ziffern der Anzahl bekannt ist. Alle Komponenten, die Sie benötigen, werden hier bereitgestellt. Passen Sie sie einfach an Ihre spezifischen Anforderungen an.
Daten sind entscheidend!
Es kommt vor, dass Sie mit normalen lateinischen Zahlen und Buchstaben genauso zählen können, wenn Sie möchten. Die Skalierbarkeit des Glossars bedeutet, dass Sie es verwenden können, um die nativen Fähigkeiten von JavaScript auf eine Kardinalität von mehr als 36 zu erweitern und jedes Symbol zu verwenden, das zu der Zeit angemessen aussieht.
oder einfach ein paar stilvolle Uhren entwickeln!
Möchten Sie mehr wissen?
Wenn Sie mehr von James lesen möchten, abonnieren Sie unsere Weekly Tech Times Newsletter Tech Times.
FAQs über jeden Zeichensatz (FAQ)
(Der im Originaltext bereitgestellte FAQ
Das obige ist der detaillierte Inhalt vonZählen mit einem willkürlichen Zeichensatz. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!