2011-03-07 14 views
5

Por ejemplo:¿Cómo convertir Unicode a carácter que se muestra en la página web usando JavaScript?

Si tengo una cadena que es Unicode: \ u4E45

quiero mostrar este carácter a la página web utilizando JavaScript. ¿Como lo puedo hacer?

Y mi segunda pregunta es que si tengo un carácter chino: 依

Quiero llegar a su Unicode (\ u4F9D) utilizando JavaScript. ¿Como lo puedo hacer?

¡Muchas gracias!

+0

¿Dónde está esa cadena de? ¿Son datos JSON? –

+0

En mi pregunta 1, el Unicode está en el archivo JSON. – weilou

Respuesta

5

Si se inyecta una cadena con caracteres Unicode a través de javascript en una página web, se mostrarán de la forma en que deberían hacerlo automáticamente (dado que la consulta del navegador admite la visualización de ese carácter).

Esto se puede ver en este ejemplo: http://jsfiddle.net/KyuKE/1/

Usted puede leer los datos en un textNode accediendo es propiedad de datos que le dará una cadena. Esta cadena tendrá el método charCodeAt disponible para obtener el código de caracteres.

ejemplo se puede ver aquí: http://jsfiddle.net/KyuKE/2/

Usted puede leer la documentación de charCodeAt aquí: https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/charCodeAt

+0

¡Gracias por tu respuesta! ¿Y sabes que hay alguna forma de obtener el Unicode de un personaje? – weilou

+0

@Wei Lou: vea mi respuesta actualizada –

+0

¡Gracias por su respuesta! – weilou

0

Código de la siguiente manera

utf8 Convertir a cadena

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

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

convertir la serie de 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' 

Espero que ayude.

Referencia:

  1. Convert a String to Unicode in Javascript | Building on Mud
Cuestiones relacionadas