У меня есть функция, и эта функция присутствует в двух JS-файлах. Оба файла загружаются при загрузке страницы. Вот почему эта функция вызывает 2 раза. Мне нужно вызвать это один раз из любого файла. Как только он вызывается из любого файла, он не будет снова звонить. Мне нужно сохранить эту функцию в обоих файлах, не удаляя ее. Кто-нибудь может мне помочь? Благодаря!Как вызвать функцию только один раз
-2
A
ответ
1
Как отметили многие комментаторы, вы действительно должны перестроить свой код, чтобы не дублировать его.
Это говорит о возможных взломах. Если вы действительно не можете удалить его, вы можете найти способ сделать свою функцию идемпотентной (по крайней мере, в том смысле, что ее можно вызывать повторно без какого-либо неблагоприятного эффекта). Вы можете использовать булевский флаг, который хранится где-то, который переводится с false на true. Затем в вашей функции вы просто охраняете свои операции с помощью этого флага.
var has_been_called = false;
function run() {
if (!has_been_called) {
//the rest of your code
has_been_called = true;
}
}
При первом вызове запускается код, и последующие вызовы не будут выполняться.
Смежные вопросы
- 1. Как вызвать функцию только один раз?
- 2. Как вызвать функцию один раз, и только один раз ...?
- 3. как вызвать функцию один раз за раз?
- 4. Как вызвать функцию только один раз в Python
- 5. Как вызвать функцию только один раз в случае mouseEvent
- 6. выполнить функцию только один раз
- 7. Запустить функцию только один раз
- 8. Вызвать функцию только один раз в х секунд
- 9. Как запустить функцию только один раз
- 10. Как запустить функцию JS только один раз?
- 11. Как выполнить функцию только один раз
- 12. Как использовать функцию window.onload только один раз
- 13. Как мне вызвать функцию один раз после chrome.cookies.onИзменить события пожара?
- 14. Как вызвать функцию один раз, после фокусировки на входном элементе?
- 15. Выполнять функцию SQL только один раз
- 16. Сделать функцию только один раз (Javascript)
- 17. Javascript setInterval() запускает функцию только один раз
- 18. Разрешить функцию onclick выполнять только один раз
- 19. Выполнить функцию только один раз за звонок
- 20. Заменить функцию работает только один раз (javascript)
- 21. Только зарегистрировать функцию с событием один раз?
- 22. JAX-RS запускает функцию только один раз
- 23. Запустить функцию KeyDown только один раз
- 24. Как выполнить функцию один раз?
- 25. Как вызвать функцию jquery один раз каждые 24 часа?
- 26. Typed.js - как вызвать функцию onClick несколько раз
- 27. Как вызвать функцию много раз автоматически?
- 28. Как вызвать функцию несколько раз? (В setInterval())
- 29. Как вызвать browser.get только один раз в скрипте?
- 30. Как скрыть несколько элементов, но только вызвать обработчик один раз?
Вы действительно должны опубликовать код функции и способ ее вызова. – Pointy
Ну, очевидный ответ - не дублировать ваш код. Что именно предотвращает это? – David
вот грубая демонстрация https://jsfiddle.net/5ez2968w/ – Bryce77