Хочу понять как работает эта функция (Java Script)

Найти наибольший общий делитель двух натуральных чисел:

function mygcd(x,y) {
  while (y !== 0) {
    y = x % (x = y);
  }
  return x;
}

Как работает это решение? А точнее, что происходит вот здесь: y = x % (x = y)


Ответы (1 шт):

Автор решения: Anton Shchyrov
(x = y)

обозначает выполнить присвоение x = y и вернуть итоговое значение

Тогда вот это

y = x % (x = y);

эквивалентно такому коду

tmp = x % y;
x = y;
y = tmp;

И лучше писать именно так, чтобы потом мучительно не вспоминать, что же этот код должен делать

→ Ссылка