Переменная var undefined если ее обьявлять через windows.userName почему?

125
08 февраля 2022, 06:40
<script>
        // ailabs_user_info  = {'user_intent_category_label':'DEFAULT', 'info_fullname':'fiotesttest', 'info_iin':'test', 'info_phone_number':'test'};
        setTimeout(function(){
            var ailabs_user_info = window.userName;
            console.log('3 sek');
            setTimeout(function(){
                console.log(ailabs_user_info);
                AILabsChatStart();
            }, 2000);
        }, 3000);
    </script>

Переменная var не найдена если ее обьявлять через windows.userName вызывая обьект путем get методов для получения данных каждого пользователя отдельно.
Но если раскоментить строку первую кода то он ее видит но мне нужны данные которые в реакте тяну методом get а не эти тестовые. Почему он не видит

var ailabs_user_info = window.userName;
Answer 1

Потому что эта переменная - локальная, объявленная внутри функции-обработчика таймера. Она не видна внутри функции AILabsChatStart.

    var ailabs_user_info;
    setTimeout(function(){
        ailabs_user_info = window.userName;
        console.log('3 sek');
        setTimeout(function(){
            console.log(ailabs_user_info);
            AILabsChatStart();
        }, 2000);
    }, 3000);
READ ALSO
Как происходит передача аргумента в колбэк?

Как происходит передача аргумента в колбэк?

В объявлении функции "check" мы передаем ей параметр "word", а когда вызываем ее в качестве колбэка, мы ничего ей не передаемКаким образом она понимает...

133
Удалить GET Params в URL

Удалить GET Params в URL

Так получаю GET params после того как все флажки сняты с checkbox $("checkbox_campaigns_id") так добавляю параметры к определенным ссылкам

126
Как сделать чекбокс для активации группы

Как сделать чекбокс для активации группы

Мне нужно чтобы при нажатие на основной чекбокс активировались все как это сделать

122