| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/String/codePointAt | [Back] [Original] |
Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.
Diese Funktion ist gut etabliert und funktioniert auf vielen Gerten und in vielen Browserversionen. Sie ist seit September 2015 browserbergreifend verfgbar.
Die codePointAt()-Methode von String Werten gibt eine nicht negative Ganzzahl zurck, 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.
const icons = "";
console.log(icons.codePointAt(1));
// Expected output: "9733"
codePointAt(index)
indexNullbasierter Index des zurckzugebenden Zeichens. In eine Ganzzahl konvertiert undefined wird in 0 konvertiert.
Eine nicht negative Ganzzahl, die den Codepunktwert des Zeichens an der angegebenen index reprsentiert.
index auerhalb des Bereichs von 0 str.length - 1 liegt, gibt codePointAt() undefined zurck.index ein UTF-16 fhrendes Surrogat ist, gibt es den Codepunkt des Surrogatpaars zurck.index ein UTF-16 nachfolgendes Surrogat ist, gibt es nur die nachfolgende Surrogat-Codeeinheit zurck.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. Hhere Codepunkte werden durch ein Paar von 16-Bit-Surrogat-Pseudo-Zeichen dargestellt. Daher gibt codePointAt() einen Codepunkt zurck, der sich mglicherweise ber zwei String-Indizes erstreckt. Fr Informationen zu Unicode, siehe UTF-16-Zeichen, Unicode-Codepunkte und Grapheme-Cluster.
"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
Da die Verwendung von String-Indizes fr Schleifen dazu fhrt, dass derselbe Codepunkt zweimal besucht wird (einmal fr das fhrende Surrogat, einmal fr das nachfolgende Surrogat), und beim zweiten Mal gibt codePointAt() nur das nachfolgende Surrogat zurck, 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']
| Spezifikation |
|---|
| ECMAScript 2027 LanguageSpecification # sec-string.prototype.codepointat |
String.prototype.codePointAt in core-jsString.prototype.codePointAtString.fromCodePoint()String.fromCharCode()String.prototype.charCodeAt()String.prototype.charAt()Stringanchor()at()big()blink()bold()charAt()charCodeAt()codePointAt()concat()endsWith()fixed()fontcolor()fontsize()includes()indexOf()isWellFormed()italics()lastIndexOf()link()localeCompare()match()matchAll()normalize()padEnd()padStart()repeat()replace()replaceAll()search()slice()small()split()startsWith()strike()sub()substr()substring()sup()toLocaleLowerCase()toLocaleUpperCase()toLowerCase()toString()toUpperCase()toWellFormed()trim()trimEnd()trimStart()valueOf()[Symbol.iterator]()Object/FunctionDer Bauplan fr ein besseres Internet.
Teile dieses Inhalts sind 19982026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfgbar unter einer Creative-Commons-Lizenz.
| Web Proxy Viewer | New URL | Original Page |