localStorage хранит строки. Вы получаете неявное преобразование. В основном score + (1).toString()
Перед установкой значения вы должны проверить, превышает ли оценка высокий результат. Я пропустил преобразование чисел, потому что есть неявное преобразование, поэтому оно не нужно. Но я бы порекомендовал вам добавить его в любом случае, просто чтобы избежать проблем.
замените highScore += 1;
на
if (score > highScore)
highScore = score;
Ниже на самом деле не нужно исправлять ваш код, но вы должны делать это в любом случае:
var highScore = parseInt(localStorage.getItem("highScore")) || score;