@adizh

Как можно получить доступ к переменной, которая находится в другой функции?

К примеру, есть две функции:

let globalValue;

function a(){

  setInterval(()=>{
    globalValue++;
    console.log('globalValue',globalValue)
  },5000)
}


function b (){
  //globalValue?

  //rest logic
}


Как можно получить значение globalValue внутри функции b? Внутри функции b, globalValue вообще не изменяется, через setInterval внутри функции b получилось получать его значение, но globalValue из-за того, за пределы интервала получить его самое последнее значение не получается. Можно ли получить последнее значение внутри другой функции, нужен что-то вроде useEffect или watch (vue), чтоб можно было постоянно следить за ним
  • Вопрос задан
  • 299 просмотров
Пригласить эксперта
Ответы на вопрос 3
Daemon23RUS
@Daemon23RUS
let globalValue; var globalValue;
Область видимости переменных
И не забыть ее инициализировать globalValue=0
Ответ написан
VoidVolker
@VoidVolker Куратор тега JavaScript
Dark side eye. А у нас печеньки! А у вас?
Вот как у вас написано - так и использовать: просто объявить переменную на уровень выше, чем функции, которые её используют. Либо передавать экземпляр класса/объект в нужные функции. Если у вас что-то не получилось - то приводите код. Текущий приведенный код полностью верный.
Ответ написан
GlazOtca
@GlazOtca
Не в бровь, а в глаз!
оборачивайте свою переменную в Proxy и в обработчиках сможете определять как ей реагировать на запись, чтение и другие события.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы