Изучайте, что такое асинхронность в JS.
Функция $.ajax не ждёт ответа от сервера, она отправляет запрос и завершается.
console.log вызывается сразу после её завершения, когда ответ ещё не пришёл и в ValueData ничего нет.
Когда приходит ответ сервера, вызывается анонимная функция, указанная в success, но основная функция modification к этому моменту уже завершилась.
Всё, что вам надо делать с ValueData надо делать именно в анонимной callback-функции.
Ну, либо, изучать Promise и async/await.