2016-11-14 3 views
2

У меня есть две строки: одна в файле HTML и одна в JS-файле, которые выглядят одинаково в моем IED (VSCODE), а также в любом текстовом редакторе.Сравнение строк - два символа выглядят одинаково, но имеют разные значения ASCII?

я могу найти значения и найти обе строки, поскольку есть разница в том, что пространство между двумя работами, я смотрел их с инструментом значения ASCII, а разница заключается в следующем:

строка 1 использует 32 20 40 (DEX, HEX, OCT)
строка 2 использует 160 A0 240 (DEX, HEX, OCT)

Что это и как я могу принести HTML и JS в выравнивании?

+2

HEX 20 = Space, A0 = Не пролома пространство. – Keith

ответ

2

Если посмотреть на символы, связанные с этими ASCII кодов (хороший ресурс https://ascii.cl/htmlcodes.htm), вы найдете следующие значения:

  • Строка 1 (32 декабря, Hex 20): Space
  • Строка 2 (декабрь 160, Hex A0):Non-breaking space

они будут выглядеть точно так же, как и друг с другом в текстовом редакторе, так как они не р чередующиеся символы. Неразрывное пространство действует так же, как и пространство, за исключением того, что оно предотвращает автоматическое прерывание строки в своем положении, когда текст завернут.

Если вы хотите, чтобы эти значения были идентичными, вам нужно либо изменить первое значение на неразрывный пробел, либо изменить второе значение на обычный символ пробела.

Больше на специальные символы: https://www.w3.org/MarkUp/html3/specialchars.html