Я только что запустил очень простой тест производительности JavaScript (не спрашивайте почему). Тест объявляет переменную, но ничего не назначает ему:
VAR X;
Затем он сравнивает скорость сравнения вариабельности значения в NULL
и undefined
, другими словами:
var y = (x == null);
и var y = (x == undefined);
.
Я ожидал сравнения с undefined
, чтобы быть постным. На самом деле это было нигде рядом. Сравнение с NULL
было далеко и даже самым быстрым, примерно на 80% быстрее.
Результаты, которые я описал выше, происходит от проведения тестов в Chrome (версия 13). Пробега их в Firefox производит результаты намного ближе к тому, что я ожидал (сравнение с undefined
, является быстрее, чем с NULL
, хотя и очень незначительно).
Итак, мой вопрос - это то, что может быть причиной этого? Почему Chrome, кажется, предпочитает сравнение с NULL
так сильно?
Для быстрой ссылкой, вот скриншот результатов: