Определение кодировки символов исходного файла JavaScript - PullRequest
25 голосов
/ 24 февраля 2010

Я хотел бы напечатать сообщение о статусе для моих немецких пользователей, которое содержит умляуты (ä / ü / ö). Я также хотел бы, чтобы они были в исходном файле, а не загружали и анализировали какой-то дополнительный файл только для сообщений.

Однако я не могу найти способ определить кодировку исходного файла JS. Есть ли что-то вроде HTML http-equiv? Или я должен определить кодировку в заголовке HTTP?

Когда я просто кодирую файл в кодировке UTF-8, IE отображает мусор.

Ответы [ 6 ]

36 голосов
/ 24 февраля 2010

Отправка кодировки в заголовках всегда хорошая идея.

Если это невозможно, тег <script> имеет свойство charset. W3C Ссылка

<script src="translations.js" type="text/javascript" charset="utf-8"/>
10 голосов
/ 23 мая 2014

Похоже, что атрибут charset для тега script не устарел в HTML5 (не рекомендуется только для тегов a и link).

3 голосов
/ 28 февраля 2013

Это может звучать немного глупо, но убедитесь, что вы сохранили свой файл JavaScript с правильной кодировкой в ​​редакторе, который вы используете. У меня была проблема с кодировкой моего файла javascript, и решение было так просто!

3 голосов
/ 22 июня 2012

Хотя параметр charset может показаться полезным, важно отметить, что он фактически устарел в HTML5.

http://www.w3.org/International/questions/qa-html-encoding-declarations#charset

3 голосов
/ 04 апреля 2012

Для французского javascript js мы использовали другую кодировку:

<script src="./js/MyScript.js" type="text/javascript" charset="iso-8859-1"></script>
0 голосов
/ 05 июня 2015

Самое простое решение вашей проблемы - использовать экранирование Юникода для специальных символов в строках. Таким образом, на ваш код не влияет страница, на которой он размещен.

Инструмент, который может вам помочь: http://www.webstein.net/tools/javascript-unicode

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...