Я заметил нечто странное, когда возился со строками и числами в консоли Javascript. Делая это:
"$99.9" += 0
вызывает SyntaxError: Invalid left-hand side in assignment
. Но если я назначу строку для переменной, поведение будет другим (и в большей степени соответствует тому, что мы привыкли ожидать от Javascript):
let str = "$99.9"
str += 0
// => "$99.90"
Я знаком с тем, что вызывает поведение во втором примере (и что вызывает так много других событий Javascripty), но ошибка в первом примере меня удивила. Что происходит в первом примере этого, что останавливает обычное поведение Javascript?