В выражениях, соединяющих числовые и строковые значения операцией +, JavaScript преобразует числа в строки, например:
x = "Ответ равен " + 21  // возвращает "Ответ равен 21"
y = 21 + "  - вот ответ" // возвращает "21 - вот ответ"
В остальных случаях JavaScript пытается преобразовать строку в число, например:
a = "21" - 1 // возвращает 20
b = "21" + 1 // возвращает 211