Показать сообщение отдельно
  #1 (permalink)  
Старый 20.08.2023, 11:53
Аватар для fxobject
Кандидат Javascript-наук
Отправить личное сообщение для fxobject Посмотреть профиль Найти все сообщения от fxobject
 
Регистрация: 01.03.2021
Сообщений: 138

странная ситуация
Доброго дня!
Вот примерно такая ситуация, имеем (для простоты сокращаю текст):
let logInfo = { queryVAR : { abonent: false }.......};
return __this.addRecordInUserLog( options,logInfo ) - это promise
ниже представлена цепочка вызовов
addRecordInUserLog
readAbonentRecord
initSQLVAR
и вот в послледней процедуре initSQLVAR стоит строка
...... код initSQLVAR ......
argument.queryVAR['abonent'] = true;
т.е. меняется базовое (начальное) значение параметра.
так вот что получается (смотрим отладчиком)
уже на первой строке функции readAbonentRecord этот параметр уже установлен в true!!!!
т.е. перед заходом в функцию - false, только зашли - сразу true
меняем присвоение в функции initSQLVAR
например argument.queryVAR['abonent'] = 'hello world'
теперь сразу как только заходим в функцию readAbonentRecord - получаем 'hello world'
И последнее
если иницциализируем переменную как строку:
let logInfo = { queryVAR : { abonent: "false" }.......};
то таких замещений не происходит

help me!!!!!
p.s.
- в других местах присвоения argument.queryVAR['abonent'] нет
Ответить с цитированием