A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/String/codePointAt below:

String.prototype.codePointAt() - JavaScript | MDN

String.prototype.codePointAt()

Baseline Widely available

Die codePointAt()-Methode von String Werten gibt eine nicht negative Ganzzahl zurück, die der Unicode-Codepunktwert des Zeichens ist, das an dem angegebenen Index beginnt. Beachten Sie, dass der Index immer noch auf UTF-16-Codeeinheiten basiert, nicht auf Unicode-Codepunkten.

Probieren Sie es aus
const icons = "☃★♲";

console.log(icons.codePointAt(1));
// Expected output: "9733"
Syntax Parameter
index

Nullbasierter Index des zurückzugebenden Zeichens. In eine Ganzzahl konvertiert — undefined wird in 0 konvertiert.

Rückgabewert

Eine nicht negative Ganzzahl, die den Codepunktwert des Zeichens an der angegebenen index repräsentiert.

Beschreibung

Zeichen in einem String sind von links nach rechts indiziert. Der Index des ersten Zeichens ist 0, und der Index des letzten Zeichens in einem String namens str ist str.length - 1.

Unicode-Codepunkte reichen von 0 bis 1114111 (0x10FFFF). In UTF-16 ist jeder String-Index eine Codeeinheit mit dem Wert 0 – 65535. Höhere Codepunkte werden durch ein Paar von 16-Bit-Surrogat-Pseudo-Zeichen dargestellt. Daher gibt codePointAt() einen Codepunkt zurück, der sich möglicherweise über zwei String-Indizes erstreckt. Für Informationen zu Unicode, siehe UTF-16-Zeichen, Unicode-Codepunkte und Grapheme-Cluster.

Beispiele Verwendung von codePointAt()
"ABC".codePointAt(0); // 65
"ABC".codePointAt(0).toString(16); // 41

"😍".codePointAt(0); // 128525
"\ud83d\ude0d".codePointAt(0); // 128525
"\ud83d\ude0d".codePointAt(0).toString(16); // 1f60d

"😍".codePointAt(1); // 56845
"\ud83d\ude0d".codePointAt(1); // 56845
"\ud83d\ude0d".codePointAt(1).toString(16); // de0d

"ABC".codePointAt(42); // undefined
Schleifen mit codePointAt()

Da die Verwendung von String-Indizes für Schleifen dazu führt, dass derselbe Codepunkt zweimal besucht wird (einmal für das führende Surrogat, einmal für das nachfolgende Surrogat), und beim zweiten Mal gibt codePointAt() nur das nachfolgende Surrogat zurück, ist es besser, Schleifen nach Index zu vermeiden.

const str = "\ud83d\udc0e\ud83d\udc71\u2764";

for (let i = 0; i < str.length; i++) {
  console.log(str.codePointAt(i).toString(16));
}
// '1f40e', 'dc0e', '1f471', 'dc71', '2764'

Verwenden Sie stattdessen eine for...of-Anweisung oder spreaden Sie den String, die beide den String's [Symbol.iterator]() aufrufen, der nach Codepunkten iteriert. Verwenden Sie dann codePointAt(0), um den Codepunkt jedes Elements zu erhalten.

for (const codePoint of str) {
  console.log(codePoint.codePointAt(0).toString(16));
}
// '1f40e', '1f471', '2764'

[...str].map((cp) => cp.codePointAt(0).toString(16));
// ['1f40e', '1f471', '2764']
Spezifikationen Browser-Kompatibilität Siehe auch

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4