Приветствую всех друзья! Добро пожаловать на канал Starlex!
Здесь вы найдете видео по различным тематикам из мира программирования.
В своих видео я показываю мой путь изучения той или иной темы из мира программирования, делюсь полученными знаниями и опытом. Моя цель - стать мастером своего дела, а именно лучшей версией себя как разработчика. 👨💻
Отличный разбор получился. Добавлю, что на 4:55 более уместный ответ будет следующий: Команда python3 была введена, поскольку python изначально указывала на python2, а потом уже на python3 (когда он стал значением по умолчанию), этот переход произошел в большинстве, но не во всех системах. Поэтому явно используют python2 и python3, чтобы не столкнуться с проблемами в таких системах.
По функционалу они ни чем не отличаются. Просто .json() является методом объекта Response, который возвращает функция fetch и позволяет сразу преобразовать полученный ответ от сервера (json) в объект JS. Это особенно удобно, когда вы работаете с асинхронными запросами, потому что обработка промиса в методе then является асинхронной операцией. JSON.parse() - это синхронный способ преобразования json -> js и доступный в любом месте кода, а тот же .json() доступен только с объектом Response
Последний пример вообще не понятный... 🤔 Как можно сложить 1 и 2, потом умножить его на none (мы же ничего не передали в num3) и получить 3? Если closure = 3, это же не функция. Как мы вызываем его с аргументом 5? 🤯
В этом и состоит смысл замыканий: создать функцию, которая бы возвращала другую функцию и при этом внутренняя функция имеет доступ к переменным из внешней функции. В примере из видео функция closure_func возвращает lamda функцию (применяем замыкание) и на эту функцию будет ссылаться переменная closure. А параметры 1, 2 (num1, num2) lamda функция просто запомнит. В итоге closure будет выглядеть так closure = lambda num3: (1 + 2) * num3 В последней строке вызываем closure как функцию и передаем для нее параметр 5 (num3). В результате получаем (1+2)*5 = 15 Надеюсь ответил на вопрос 😊