какой из них быстрее: шестнадцатеричные цветовые коды или названия цветов? - PullRequest
13 голосов
/ 10 июля 2011

Я просто хотел узнать, быстрее ли использовать шестнадцатеричные цветовые коды или названия цветов, когда я хочу использовать его в CSS?

Ответы [ 3 ]

15 голосов
/ 10 июля 2011

Я предполагаю, что коды будут быстрее, так как имена, вероятно, присваиваются справочной таблице и в любом случае ссылаются на шестнадцатеричные коды.

При этом, я думаю, разница в скорости будет совершенно незначительной.

Вот тест производительности, который я только что создал. Они в порядке, хотя шестнадцатеричные коды пока работают немного быстрее: http://jsperf.com/css-color-names-vs-hex-codes

7 голосов
/ 10 июля 2011

Я пойду против общепринятого консенсуса и предположу, что, возможно, имена цветов быстрее, если таблица поиска возвращает значение цвета в виде целого числа.Это означало бы, что при использовании именованного цвета браузеру не нужно вручную анализировать строку, содержащую шестнадцатеричные символы, в соответствующее целое число, все, что ему нужно сделать, - это поиск хеша O (1).И это вполне может быть немного быстрее, чем разбор строки в целое число.

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

5 голосов
/ 10 июля 2011

Быстрее с точки зрения рендеринга?

С практической точки зрения невозможно, чтобы это когда-либо имело какое-либо значение.

С технической точки зрения это зависит от того, как CSS-рендеринг реализован в каждом браузере.Если бы мне пришлось сделать предположение, я бы вообразил, что использование hex в большинстве браузеров примерно на 3 такта (преувеличение) быстрее, так как имя должно быть сначала преобразовано в hex.

Но время егоПотребовалось, чтобы задать вопрос - это больше времени, чем было потрачено впустую всеми браузерами в мире, которые занимались этим преобразованием с момента изобретения Интернета.

...