Когда был создан javascript, ожидалось, что он будет использоваться для небольших скриптов и часто начинающими программистами. В результате он был разработан, чтобы допускать некоторые небрежные методы кодирования. Один из способов сделать это заключается в том, что если вы не объявите свою переменную, она создаст для вас глобальную переменную.
При запуске этой строки:
visitor_name = prompt("Input your name : ");
Javascript создаст свойство для объекта window
с именем visitor_name
. И позже, всякий раз, когда вы обращаетесь к visitor_name, поскольку другой переменной с таким именем нет, он будет обращаться к window.visitor_name
. Я рекомендую вам избегать использования этой «функции» javascript и просто объявляйте свой переменные явно.