2+"2" = ?
new_rabochy — 25.08.2023 Я пожалуй сразу начну с опроса, а потом поясню откуда возник вопрос.Дело в том, что буквально вчера, на практике налетел на эти грабли. Которые возникают при отсутствии типизации. А + B может дать черт знает какой результат, если типы А и B не известны и соответственно не определена операция сложения над этими типами.
Вот натурально я вчера наблюдал как сломался вполне себе рабочий код на языке javascript только от того, что операция A/B приобрела вид (A+С)/B, где С - число и константа. А/B - было числом, а A+C оказалось строкой. Которая тоже была приведена к числу. И результат вычисления простого казалось бы выражения стал непредсказуем. Разумеется проблема решилась при помощи явного указания (приведения) типов. Т.е. строго определения того, каким должны быть А и B, чтобы операция выполнялась корректно.
Но можно было бы пойти и другим путем. Можно было бы долго и упорно ругаться на то, что интерпретатор языка не понимает "самоочевидных" вещей и будучи склонным к сволочизму занимается конкатенацией там где нужно арифметическое сложение :)
P.S. На всякий случай. Этот пост - шутка, для оценки которой нужно знать контекст :)
P.P.S. Три раза публиковал этот пост. Даже в опросе данная строка принимает вид отличный от желаемого.