|
5 / 5 / 0
Регистрация: 25.09.2017
Сообщений: 569
|
||||||
Параметр функции, который может быть задан по умолчанию не определён при его передаче со значением, отличным от значения по умолчанию17.01.2026, 07:09. Показов 1233. Ответов 48
Метки нет (Все метки)
Здравствуйте! Вот столкнулся с таким поведением. В некотором классе A определена функция createEncrypted, у которой параметр refresh задан по умолчанию. Когда я меняю его значение на другое (строка 42), это приводит к ошибке ReferenceError: refresh is not defined. Может ли это быть из-за атрибута объекта с тем же именем, которому присваивается значение refresh, вроде как нет. Тогда почему это не работает?
https://developer.mozilla.org/... parameters В другом месте с тринарной функцией, которая вызывается в другой функции и у которой два последних параметра - параметры по умолчанию, это работает.
0
|
||||||
| 17.01.2026, 07:09 | |
|
Ответы с готовыми решениями:
48
"В поле может быть введено только одно слово, пробелы могут быть или не быть с начала слова и в конце" Как передать параметр из jsp java страницы в функцию javascript и возвратить обратно другой параметр
|
|
5 / 5 / 0
Регистрация: 25.09.2017
Сообщений: 569
|
||||||||||||||
| 19.01.2026, 11:34 [ТС] | ||||||||||||||
|
А если у вас первые три - обязательные (д.б. определены в области видимости), а остальные задаются по умолчанию из определения функции и если нужно только пятому при каком-то вызове что-то другое присвоить, отличное от значения по-умолчанию.
0
|
||||||||||||||
|
3857 / 1755 / 432
Регистрация: 14.03.2022
Сообщений: 4,441
|
||||||||||||
| 19.01.2026, 11:44 | ||||||||||||
![]() Вот тебе аналог.
![]() Добавлено через 5 минут Alex_py, или вообще вот так...
1
|
||||||||||||
|
5 / 5 / 0
Регистрация: 25.09.2017
Сообщений: 569
|
|||||||||||||
| 19.01.2026, 12:05 [ТС] | |||||||||||||
|
Как я понял, почему у меня в этом случае происходит ReferencedError
Потому что у refresh нет определения. И такой вызов недопустим, даже если refresh при передаче как параметр - у него просто меняется значение на другое. "Логика" js другая. Это не атрибут / параметр, а переменная, которая не определена. И сбивает с толку, что в другом месте это работает (не в классе, а в другой функции) Добавлено через 8 минут Но это работает:
Ну хорошо, немного непривычно работать в особенностях js пока.
0
|
|||||||||||||
|
1296 / 1283 / 190
Регистрация: 21.01.2024
Сообщений: 5,955
|
|||||||||
| 19.01.2026, 12:49 | |||||||||
Поставьте в файле 'use strict' первой строкой, и тоже будет вылетать ошибка. Внутри классов и модулей строгий режим включен автоматически по умолчанию. Добавлено через 10 минут Добавлено через 2 минуты
0
|
|||||||||
|
425 / 314 / 115
Регистрация: 28.08.2013
Сообщений: 869
|
|||||||
| 19.01.2026, 13:31 | |||||||
0
|
|||||||
|
3857 / 1755 / 432
Регистрация: 14.03.2022
Сообщений: 4,441
|
|
| 19.01.2026, 14:09 | |
|
kidASM, читал книжку "TypeScript Подробное Руководство" Дата последнего обновления: 12/1/2022?
Если прям все понял и в этом спокойно разбираешься - мое почтение. ![]() Если только начальный уровень - тогда рано еще что-то обсуждать. Добавлено через 5 минут Вот моя "библиотечка" по TS - TypeScript быстро - Основы TypeScript - TypeScript полное руководство - Рецепты TypeScript Программирование на уровне типов для реальных задач - Эффективный TypeScript 62 способа улучшить код Начитавшись всего этого - не готов использовать в работе. Поскольку это все нужно еще объяснить подчиненным и, помимо JS, научить все это правильно использовать.
0
|
|
|
425 / 314 / 115
Регистрация: 28.08.2013
Сообщений: 869
|
|||
| 19.01.2026, 17:20 | |||
![]() Когда начали разбираться (не моя таска была), то всё ok. Запрос приходит, проверяется, обрабатывается, в базу запрос уходит, из базы приходит ответ (с правильными данными), но на фрот приходит пустой ответ. В итоге, просто убрали сериализатор, и написали фронту чтоб изменили переменные. И всё заработало как нужно, и работает до сих пор. С другой стороны. Много раз видел когда браузер делает 3, 4, 5 и более запросов (сразу) на один роут. А сервер эти все запросы обрабатывает и выдаёт ответ. Т.е. если человек не знает как должно быть, как должно работать, то TypeScript никак не поможет. Для джуна TypeScript может быть и хорошая вещь, но для мидла и выше - TypeScript только мешает. Да ещё и транспилирует код с медленный JavaScript. Если для фронта это не критично (функция отработает за 50 или 500 миллисекунд), пользователь это всё-равно не заметит. А для сервера (Node.js/Bun/Deno) - это очень критично, если запрос будет обрабатываться 500 мс. Более того, недавно попросили найти причину, почему сервер на Expressjs в стрес-тестах обрабатывает 17 запросов в минуту (я не ошибся, не в секунду (что тоже не приемлемо), а именно в минуту). А так, рабочий сервер написанный на TypeScript. Так что, если программист не знает JavaScript, то TypeScript поможет только наделать на несколько ошибок меньше. Но ошибки всё-равно будут. П.С. Я знаю в чём ошибка с Modbus.
0
|
|||
|
1296 / 1283 / 190
Регистрация: 21.01.2024
Сообщений: 5,955
|
||
| 19.01.2026, 17:37 | ||
|
Кстати на последних версиях node (пока в качестве экспериментальной функции) так и сделали, что теперь 99% ts может работать без всякой предварительной трансляции. Информация о типах при парсинге просто заменяется пробелами https://nodesource.com/blog/No... t-Natively
0
|
||
|
425 / 314 / 115
Регистрация: 28.08.2013
Сообщений: 869
|
|||
| 19.01.2026, 17:45 | |||
|
В том то и дело, что никого (из программистов) не волнует какой JS код генерит TS.
Добавлено через 3 минуты
0
|
|||
|
1296 / 1283 / 190
Регистрация: 21.01.2024
Сообщений: 5,955
|
|||
| 19.01.2026, 17:49 | |||
|
Что написали, то и получили. Добавлено через 2 минуты Сам попробуй. Возьми свой ts файл и просто убери информацию о типах (сотри или замени на пробелы). Что получится? Получится чистый js.
0
|
|||
|
425 / 314 / 115
Регистрация: 28.08.2013
Сообщений: 869
|
|||
| 19.01.2026, 18:05 | |||
|
0
|
|||
|
1296 / 1283 / 190
Регистрация: 21.01.2024
Сообщений: 5,955
|
||
| 19.01.2026, 18:15 | ||
|
Чистый js и jsDoc. При работе в VScode информация о типах, которая берется из jsDoc помогает. Ошибок с типами нет, потому, что vsc все проверяет и не дает их делать. Заодно иногда ценно подсказывает - "Аааа, вот эта переменная может быть null (после возврата из функции), а ты проверку не делаешь!" Конечно jsDoc более многословен, чем ts (да и не все возможности), но нет никакого этапа транспиляции - информация о типах задается просто в комментариях.
0
|
||
|
425 / 314 / 115
Регистрация: 28.08.2013
Сообщений: 869
|
|
| 19.01.2026, 18:31 | |
|
0
|
|
|
3857 / 1755 / 432
Регистрация: 14.03.2022
Сообщений: 4,441
|
||||
| 19.01.2026, 18:38 | ||||
|
Добавлено через 2 минуты Добавлено через 3 минуты ![]() Умелый спец если что и начал использовать - он в этом, как правило, разобрался и может объяснить зачем он это использует. Молодняк может накуролесить даже в JS. Если возьмет еще и TS - накуролесит еще больше!
0
|
||||
|
1296 / 1283 / 190
Регистрация: 21.01.2024
Сообщений: 5,955
|
||
| 19.01.2026, 18:45 | ||
|
Ну и есть такой момент, как я читал: Webstorm тоже может делать проверку типов с использованием jsDoc. Но вроде пишут, что синтаксис в некоторых случаях отличается от того, что требует vsc.
0
|
||
|
3857 / 1755 / 432
Регистрация: 14.03.2022
Сообщений: 4,441
|
||||
| 19.01.2026, 18:47 | ||||
![]() ![]() Даже не предполагал что буду защищать TS... Но вы там нагородили какую-то дичь, а вините TS. В книжках, что я привел выше, разбирают достаточно сложные хитросплетения... Рассматривают что получилось в итоге... ![]() В итоге, при писании на TS, просто добавляются проверки. Это при правильном использовании TS. ![]() При дилетантском подходе может получиться х/з что. ![]() kidASM, в любом случае, если интересна тема с TS, приводи тестовые примеры - будем разбирать. Будем прокачиваться и в TSах.
0
|
||||
| 19.01.2026, 18:53 | ||
|
Небольшая цитата
Когда-то Алиса произнесла "Приходится бежать со всех ног, чтобы только оставаться на том же месте, а чтобы попасть в другое место, нужно бежать вдвое быстрее". источник https://github.blog/news-insig... ript-to-1/
0
|
||
|
1296 / 1283 / 190
Регистрация: 21.01.2024
Сообщений: 5,955
|
||
| 19.01.2026, 18:59 | ||
|
Начинается новый проект. На чем будем делать? На ts и React! А почему? А потому, что команда больше ничего не знает. А почему не знает? А потому, что сказали, что все пишут на ts и React и мы учили именно это. К тому, что это кардинально лучше всего остального, и дает какие то весомые преимущества по сравнению с остальным - речи тут нет. Многие пишущие на ts и реакт не знают ни js (в значительном объеме) ни чистого html. Я как то долго ржал, когда читал статью одного из создателей Vite, где он признавался, что с большим удивлением узнал, что теги типа <img>, <br>, <input> в html 5 можно (и нужно) указывать без "/>" в конце
0
|
||
|
3857 / 1755 / 432
Регистрация: 14.03.2022
Сообщений: 4,441
|
||
| 19.01.2026, 20:41 | ||
![]() А мы зарабатываем не тем, что нововведения продаем.
0
|
||
| 19.01.2026, 20:41 | |
|
NestJS/Swagger. Как правильно описать body параметр, что бы он отображался в документации как параметр body
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
|
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
|
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения.
https:/ / habr. com/ ru/ sandbox/ 295048/
начало и оглавление
-
Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование. . .
|
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
|
|
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано
Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
|
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано
Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
|
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0)
Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона
Уважаемые коллеги!
В продолжение. . .
|
Грибы - это женщины, деревья - это мужчины. Анти инь янь для союза мужчины и женщины.
anaschu 18.07.2026
ГЛАВНЫЙ НАУЧНО-ФИЛОСОФСКИЙ ВЫВОД: Сексуально-Репродуктивный Капитализм против Государства Моногамии
Коллеги, мы вышли на финишную прямую 20-мерного ОДУ-моделирования вековой сукцессии (ветка. . .
|