какой из приведенных для цикла быстрее? - PullRequest
0 голосов
/ 09 июня 2018

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

    let a = "Aditya";
    1.for (let i=0; i<a.length; i++)
    2.for(let i=a.length; i>0; i--)
    3.for(let i=0, length=a.length; i<length; i++)

, что из вышеперечисленного для цикла выполняется быстрее 1, 2, 3?Устройте это, и укажите причину.Я был как хорошо, я использовал (1) больше всего, поэтому он мог быть быстрее, но он сказал мне, что я был неправ, и я попробовал Google не может найти никакого полезного решения. Пожалуйста, помогите мне.

1 Ответ

0 голосов
/ 09 июня 2018

Лучший ответ, вероятно, таков:

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

Он сказал мне, что 3-й - самый быстрый, 2-й эквивалентен ему, а 1-й - самый медленный.

Не совсем.Современные браузеры настолько оптимизируют все три цикла, что фактически работают с одинаковой скоростью.

...