2012-04-11 2 views
7

У меня есть строка 00B0, которая является Unicode знака степени, как я могу преобразовать в символ?Как преобразовать символ 00B0 (знак степени) unicode?

var str = "00B0"; 
var degreeSign = convesion(str); 
console.log(degreeSign); 

Как это возможно?

+0

Связанный: http://stackoverflow.com/questions/9878483/php-equivlent-of-fromcharcode/9878531#9878531 Один для PHP –

ответ

7
console.log('\u00B0');​​​​​​ // outputs ° in my chrome console 

так в основном: '\ u00B0'

+2

Вот как это делается. [MDN - значения, переменные и литералы: escape-последовательности Unicode] (https://developer.mozilla.org/en/JavaScript/Guide/Values,_Variables,_and_Literals#Unicode_escape_sequences). Вы можете добавить эту ссылку и удалить «Это работает для меня», чтобы улучшить ваш ответ. –

+0

и поэтому я сделал;) –

+0

Проблема с этим подходом заключается в том, что строка '' 00B0'' не может быть легко преобразована в строку '' \ u00B0''. Строковый литерал '' \ u00B0'' является единственным символом, но '' \ u '+ str' не работает для его создания. Вам нужно будет создать код для строкового литерала, а затем выполнить код, чтобы получить строку. – Guffa

1

Вы можете использовать символы Unicode в HTML, следуя этому пример

° 

степени знак будет выглядеть так: & # x00B0;

Редактировать: За исключением этого вопроса отмечен как Node.js. Какова цель получения символа? Является ли это интерфейсом или интерфейсом?

5

Разобрать строку в число, чтобы получить код символа, а затем использовать метод String.fromCharCode для создания строки из него:

var degreeSign = String.fromCharCode(parseInt(str, 16)); 
+0

Спасибо, Теперь у меня есть строка, которая содержит специальный символ (в строке Unicode). Как я могу его декодировать. E.g var str = "002E002C002D0021003F0040007E005F000A005C002F002600220027003B005E007C003A00280029003C007B007D003E005"; любая идея? пожалуйста ... –

+0

@PareshThummar: Возьмите четыре символа за раз из строки и проанализируйте их, как указано выше: http://jsfiddle.net/Guffa/DXf3R/ – Guffa

2

Если вы уверены, что ваша строка хорошо сформирована, вы можете также сделать это так:

var degreeSign = eval("('\\u" + str + "')"); 
+0

Большое спасибо. –

Смежные вопросы