Объясните пожалуйста один нюанс в JS?

JavaScript java скрипт програмирование

function pingpong(){
var phpinput = document.pingF.pingI;
if(phpinput.value == "1")
{
phpinput.value = "";
}
else{
phpinput.value = "1";
}
}
setInterval(pingpong, 100);

Скрипт работает правильно. Но почему если я для удобства переменной phpinput захочу присвоить не само поле, а значение этого поля, то работать уже не будет???
Ответы:
document.pingF.pingI - это ссылка на объект, при присваивании копируется ссылка, а сам объект остаётся прежним, поэтому когда вы меняете его свойство, это изменение отражается во всех местах, в данном случае в поле ввода.


15 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.