y1とyear1は、匿名関数内では未定義です。これはcircle.attr()のパラメータです。しかし、 'year1'はコードがcircle.attr()に入る前に正しい値を持っています。誰かがこれがなぜなのか説明できますか? **私はあなたがyear1
を再定義している「xYear(Y)」関数の引数として匿名関数に値を渡す
function circleLocation(y) {
year1 = y
console.log(year1)
circle.attr('cx', function(year1) {
y1 = year1;
console.log(y1)
console.log(year1)
return xYear(y);
})
}