Вчера я работал над простой задачей, просто нужно было суммировать значения в нескольких раскрывающихся меню для отображения в текстовом поле через Javascript. Неожиданно это было просто построение строки, вместо того, чтобы дать мне значение 4, оно дало мне «1111». Я понимаю, что происходит; но я не понимаю как.Как плохо типизированный язык знает, как обращаться с разными типами данных?
С помощью слабо типизированного языка, такого как Javascript или PHP, как компьютер «знает», какой тип относится к чему-то? Если я просто набираю все как var
, как он отличает строку от int от объекта?
Спасибо за ответ, и, возможно, я должен был выбрать мои слова более тщательно; Я имел в виду тип как глагол «набирать на клавиатуре», а не вводить в смысл программирования :) – sab669
Недостатком этого является то, что если для статически типизированного языка, такого как Java, компилятор может сказать вам, что определенного типа нет определенный метод или определенный метод не принимает параметры определенного типа до того, как вы даже запустите программу, вы получите только эти ошибки во время выполнения в Javascript. – Thilo
Да, я, безусловно, хорошо знаком с проблемами языка ха-ха. – sab669