Это не уравнение (в математическом смысле), это просто оператор присваивания .
Вы можете ясно увидеть, что это не математическое уравнение, если мы сделаем это:
let x = 2;
x = x + 5;//x is 7 now
Этот x = x + 5
не имеет смысла как уравнение. Здесь происходит то, что мы берем текущее значение x
и добавляем к нему 5. В JavaScript, что было бы ближе к уравнению в математическом смысле слова, было бы использовать ==
или ===
.
Возвращаясь к вашему вопросу, вот что у нас есть:
var stocks;//undefined at this point
Затем, когда вы делаете ...
.entries(stocks = data);
... вы просто присваиваете stocks
data
и передаете это в качестве аргумента entries
. С точки зрения метода entries
это не имеет абсолютно никакого значения, метод будет вести себя точно так же, если вы просто выполните .entries(data)
.
Наконец, вы можете видеть, что stocks
находится вне d3.csv
, поэтому вероятно, здесь происходит то, что человек, который написал этот код, хочет использовать data
вне асинхронной функции. Это то, что мы обычно видим, когда программисты не любят или не знают, как справляться с асинхронной природой этих методов.