Для операторов ассоциативность означает, что когда один и тот же оператор появляется в строке, то к какому оператору мы обращаемся в первую очередь. Далее, пусть Q
будет оператором
a Q b Q c
Если Q
остается ассоциативным, то оно оценивается как
(a Q b) Q c
А если оно ассоциативно верно, то оно оценивается как
a Q (b Q c)
Это важно, поскольку оно меняет значение выражения. Рассмотрим оператор деления с целочисленной арифметикой, который остается ассоциативным
4 / 2 / 3 <=> (4 / 2) / 3 <=> 2 / 3 = 0
Если бы он был ассоциативно правильным, он бы выглядел как неопределенное выражение, поскольку вы бы делили на ноль
4 / 2 / 3 <=> 4 / (2 / 3) <=> 4 / 0 = undefined