Сергей Бондарюк

Сделал задание следующим образом: Ревью Но линтер ругается вот так:

6:5 error Assignment to function parameter 'a' no-param-reassign
7:5 error Assignment to function parameter 'b' no-param-reassign

Как я понимаю, ошибка no-param-reassign является следствием изменение значения аргумента в функции. Окей, я понимаю что исходя из алгоритма Евклида, мне приходится переназначать в цикле аргументы, которые передаются в тело цикла. При этом в решении учителя происходит в целом тоже самое, но переназначение происходит при возврате значений, а не перед возвратом как у меня. Может быть есть какой-то "трюк" при помощи которого я мог бы исправить замечания линтера? Спасибо.

1 0

Добрый день!
Как вариант вы можете объявить новые переменные перед циклом.
А, вообще это правило линтера создано для того, чтобы избегать проблем с отладкой кода. Сейчас это может показатся незначительным, но когда количество кода существенно вырастет, отловить ошибку может быть очень трудно.

0

Похожие вопросы

Александра Сагидуллина 03 марта 2020 →

Добрый день. Тесты прошли , но линтер ругается. Никак не пойму, как можно перезаписать переменные в функции...

Yana Khaustova 26 февраля 2020 →

https://ru.hexlet.io/code_reviews/221050 - что-то застряла, не могу понять почему цикл не выполняетс

Егор Попов 15 февраля 2020 →

Здравствуйте!Я не смог сделать задание, поэтому взял код учителя и пытался в нем разобраться, но я не поним...

Виталий Семёнов 04 февраля 2020 →

На Repl.it (https://repl.it/repls/BurdensomeOldMinimalsystem) выполняется, а в задании Maximum call stack s...

Анатолий Княжев 29 января 2020 →

Помогите пожалуйста разобраться в чем проблема. Почему при проверке второй пары чисел div вместо 1 принимае...

Мы учим программированию с нуля до стажировки и работы. Попробуйте наш бесплатный курс «Введение в программирование» или полные программы обучения по Javascript, PHP, Python и Java.

Хекслет

Подробнее о том, почему наше обучение работает →