Javascript: requestAnimationFrame как свойство объекта [дубликат]

Это произошло со мной снова, вместе с сервером, загружающим html-файлы, а не обработкой. Я не использовал веб-сервер Apache некоторое время на компьютере, а между тем Ubuntu обновлялся как еще две версии изначально установленных LTS. Теперь это

$ cat /etc/issue
Ubuntu 16.04 LTS

Итак, php работал так:

$ sudo apt-get install lamp-server^
$ sudo a2enmod php7.0
$ sudo service apache2 restart 

Теперь веб-сервер разбирал php. Возможно, теперь вам нужно обновить некоторые веб-страницы, так как теперь php7.0 работает там, где это было до запуска php5. О, хорошо.

2
задан Nathan Tuggy 25 December 2014 в 09:10
поделиться

2 ответа

Функциональный объект в JavaScript - это одно. Вызов функции - это другое дело. Вы используете последний, включив круглые скобки после имени функции *, но вам нужен первый, без круглых скобок. Это позволяет setTimeout позже вызвать эту функцию, используя переданный объект. Предполагая, что вам действительно нужно 5 секунд (а не 50 секунд, которые использовал исходный код):

setTimeout(GetUsersNumber, 5000);

* Действительно, любая старая переменная, содержащая объект функции, может быть вызвана так, но для удобства определение функции также определяет имя переменной для нее.

2
ответ дан Nathan Tuggy 20 August 2018 в 14:24
поделиться

setTimeout принимает функцию как параметр. То, что вы делаете, сразу же выполняет функцию и передает возвращаемое значение функции exected. Пропустите GetUsersNumber вместо GetUsersNumber(). () уже выполняет функцию.

setTimeout(GetUsersNumber, 50000);

На боковой ноте:

  • Большинство современных браузеров поддерживают XMLHttpRequest изначально. Таким образом, использование ActiveXObject не требуется.
  • Для старых браузеров условие if в любом случае даст ошибку. Сделайте это: if(window.XMLHttpRequest)
3
ответ дан gp. 20 August 2018 в 14:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: