Как преобразовать Unicode в символ, который отображается на веб-странице с помощью JavaScript? - PullRequest
5 голосов
/ 07 марта 2011

Например:

Если у меня есть строка, которая является Unicode: \ u4E45

Я хочу отобразить этот символ на веб-странице, используя JavaScript. Как я могу это сделать?

И мой второй вопрос: если у меня есть китайский иероглиф: 100

Я хочу получить его Unicode (\ u4F9D), используя JavaScript. Как я могу это сделать?

Большое спасибо!

Ответы [ 2 ]

5 голосов
/ 07 марта 2011

Если вы вставите строку с символами юникода через javascript в веб-страницу, они будут отображаться так, как они должны автоматически (учитывая, что запрос браузера поддерживает отображение этого символа).

Это можно увидеть в следующем примере: http://jsfiddle.net/KyuKE/1/

Вы можете прочитать данные в textNode, открыв его свойство data, которое даст вам строку. В этой строке будет доступен метод charCodeAt для получения charCode.

Пример можно увидеть здесь: http://jsfiddle.net/KyuKE/2/

С документацией по charCodeAt можно ознакомиться здесь: https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/charCodeAt

0 голосов
/ 22 февраля 2017

Код следующий

Преобразование utf8 в строку

let font = '\u5b8b\u4f53';
console.log('font', font); // -> font 宋体

let str = String.raw`${font}`;
console.log('str', str);  // -> str 宋体

Преобразование строки в utf8

function toUnicode(theString) {
  var unicodeString = '';
  for (var i=0; i < theString.length; i++) {
    var theUnicode = theString.charCodeAt(i).toString(16).toUpperCase();
    while (theUnicode.length < 4) {
      theUnicode = '0' + theUnicode;
    }
    theUnicode = '\\u' + theUnicode;
    unicodeString += theUnicode;
  }
  return unicodeString;
}

toUnicode(str[0]);  // -> '\\u5B8B'

Надеюсь, это поможет.:

  1. Преобразование строки в Unicode в Javascript |Опираясь на грязи
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...