JavaScript/Objekte/String/fromCharCode

Aus SELFHTML-Wiki
Wechseln zu: Navigation, Suche

Die Methode fromCharCode() interpretiert eine Reihe von numerischen Parametern als UTF-16-Zeichennummern und erzeugt eine entsprechende Zeichenkette daraus.

  • JavaScript 1.2
  • Chrome
  • Firefox
  • IE
  • Opera
  • Safari
  • Nur Lesen / Read Only

String.fromCharCode(num1[, ...[, numN]])

Die Methode kann folgende Parameter haben:

  • num1: eine kommaseparierte Liste von Zahlen, die Unicode-Werten entsprechen


Beachten Sie: Wichtig ist, vor der Methode fromCharCode() immer das feste Schlüsselwort String (großgeschrieben) zu notieren.

Arbeit mit höheren Zahlenwerten[Bearbeiten]

Hat das gewünschte Unicode-Zeichen eine Nummer über 65535, muss es zunächst in zwei Surrogate genannte UTF-16-Zeicheneinheiten umgewandelt werden. Möchte man beispielsweise das Symbol Sternschnuppe "🌠" kodieren, das die Unicode-Nummer 127776 hat, muss man wie folgt vorgehen:

Beispiel
var zeicheneinheit1 = Math.floor((127776 - 65536) / 1024) + 55296; // High Surrogate
var zeicheneinheit2 = ((127776 - 65536) % 1024) + 56320;           // Low Surrogate
var Test = String.fromCharCode(zeicheneinheit1, zeicheneinheit2);

Anwendungsbeispiel[Bearbeiten]

Beispiel ansehen …
  var elem = document.getElementById('button');
  elem.addEventListener('click', zeichen);	
 
  function zeichen() {
    var test = String.fromCharCode(65, 66, 67);
	
    var ausgabe = document.getElementById('ausgabe');
    ausgabe.innerHTML = test;
  }

Im Beispiel wird mit String.fromCharCode() die Zeichenkette "ABC" erzeugt und in der Variablen test gespeichert. Die Zeichenkette kommt dadurch zustande, dass 65 die dezimale Zeichennummer für A in der Unicode-Codetabelle ist, 66 derjenige für B und 67 der für C. Im Beispiel wird das Ergebnis zur Kontrolle ausgegeben.



Beispiel: Zahleneingabe durch Nutzer, Verarbeitung ansehen …
function init() {
  var elem = document.getElementById('button');
  elem.addEventListener('click', umwandlung);	
}
 
function umwandlung() {
  var eingabeElement = document.getElementById('unicode'); 
  var zahl = eingabeElement.value; 
  var zeichen = String.fromCharCode(zahl);
  eingabeElement.value = '';
  ausgabe(zeichen);
}

function ausgabe(text){
  var ausgabe = document.getElementById('ausgabe');
  ausgabe.innerHTML = text;
}
 
document.addEventListener('DOMContentLoaded', init);
In diesem abgewandelten Beispiel gibt der Nutzer eine Zahl ein. Durch einen Klick auf den Button wird die Funktion umwandlung() aufgerufen. Dort wird der Wert des Eingabefeldes mit der id unicode ausgelesen und umgewandelt. Anschließend wird der Wert des Eingabefelds zurückgesetzt und das Unicodezeichen ausgegeben.


Weblinks[Bearbeiten]