Количество переменных, хранящих координаты, следует привести в соответствие с количеством осей, по которым осуществляется перемещение. А то переменная одна, а осей две. Как вы собираетесь два независимых значения хранить в одной переменной? Это абсурд - два (сейчас внимание, будет сногсшибательный факт) больше одного.
Или сделайте объект/массив, который будет содержать обе координаты:
const coord = [ 0, 0 ];
const step = 10;
const moveFunc = e => {
const shift = ({
ArrowUp: [ 0, -1 ],
ArrowDown: [ 0, 1 ],
ArrowLeft: [ -1, 0 ],
ArrowRight: [ 1, 0 ],
})[e.code];
if (shift) {
div.style.left = `${coord[0] += shift[0] * step}px`;
div.style.top = `${coord[1] += shift[1] * step}px`;
}
};