Roman
а в чем вопрос я не понял?
Roman
зарегаться на cloudflare и пусть тащат
Way
cloudflare бесполезный теперь
Way
Его слишком легко обходить
Vlad
Есть кто с mdl работал?
Sergey
Доброго всем времени суток. в этом чатике можно задавать нубские вопросы или может кто знает чат по JS для начинающих?
Sergey
Rustam
Sergey
суть проблемы. объявлены переменнвые которые содержат в себе объекты. делаю Object.assign(a, new, old) и на выходе получаю ошибку Unexpected token , in script: Object.assign(a, new, old)". если я правильно понимаю ,то ему почему-то не нравится запятая. что с ней может быть не так?
Nikolay
new
Nikolay
Не надо так называть переменные.
Nikolay
А вообще тебе в чатик для нубов.
Nikolay
Тут профессионалы. И профессионалки.
Nikita
Ахаха
Nikita
Один другого профессиональней
Sergey
А вообще тебе в чатик для нубов.
Я это первым делом спросил))
Sergey
Не надо так называть переменные.
В этот момент я соскучился по питону)
Yuriy Zymlex
Yuriy Zymlex
Подскажите, существуют ли встроенные методы, для вывода в строку информации из обьекта как в браузере?
Андрей
JSON.stringify
Yuriy Zymlex
JSON.stringify
Возвращает {} :(
Yuriy Zymlex
JSON.stringify
а из сторонних какие существуют? пробовал https://cdnjs.cloudflare.com/ajax/libs/json3/3.3.2/json3.min.js, то же не сериализует.
Anonymous
Как то можно определить, открыли ссылку в iframe
Anonymous
или нет
Anonymous
надо шаблоны разные применть в том и ином случае
Anonymous
подскажите котаны
Nikolay
cycle.js кто-нить трогал? Идея интересная, но на этом в прод-то ваще пишут риальне проекты?
Nikolay
Или это нечто мертворожденное типа elm?
Завтра
Слышал, что кто на нем писал, хейтят, но почему - не углублялся
Alpha
Чёткие поцыки выбирают anonymous poll async/await – 5 👍👍👍👍👍👍👍 56% Promise – 4 👍👍👍👍👍👍 44% 👥 9 people voted so far.
Nikolay
Alpha
Ммм... Ну там под капотом один фиг всё те же промисы, емнип
Nikolay
Я не про это, тут же всяко речь про внешнее оформление кода, а не про то, во что это скомпилится :)
Alpha
Ну... Да
Nikolay
Где-то промисы рулят, где-то в редких случаях асинки.
Nikolay
На асинках удобно ветвление строить, ну и просто прямые цепочки, например в сценариях интеграционных тестов
Alpha
Ну я сейчас пришёл к следующему варианту: - Promise на самом низком уровне (т.н. слой репозиториев, источники данных и т.п.); - async/await на сервисном слое и выше, с перехватом ошибок в контроллере
Nikolay
Ну я сейчас пришёл к следующему варианту: - Promise на самом низком уровне (т.н. слой репозиториев, источники данных и т.п.); - async/await на сервисном слое и выше, с перехватом ошибок в контроллере
Тут все зависит от сложности дерева тасков. У нас вот например сто тыщ бекендов дергается на один запрос, и часть запросов независима, а часть зависит от результата предыдущего. При этом есть жесткий SLA, а это значит, что никто не должен "простаивать".
Alpha
Ну вообще, промисы понятнее как-то в этом плане.
Nikolay
На промисах получается нормально, если пишет человек с прямыми руками. Не одной колбасой, а грамотно все декомпозируя.
Alpha
Ну понятное дело
Nikolay
Проблемы начинаются с ветвлением, ну и чтоб стейт пробросить в следующие скоупы -- тоже громоздко
Alpha
> Не одной колбасой Сохранил в цитатник, годно звучит
Nikolay
Но больше всего я радуюсь "специалистам", которые прочитали пару статей на медиуме, и начинают: async function getShitAndCrap() { return await Promise.all[getShit(), getCrap()]; } И вот их даже поправлять неохота, т.к. чем больше и чаще они будут такое писать, тем дороже будет стоить мой труд на рынке :)
Alpha
Сурово
Nikolay
Промис в промисе?
Ну эт как бонус, угу
Nikolay
Тут главный вопрос, нахера вообще здесь асунц-авайт
Alpha
Стильно. Модно. Молодёжно.
Alpha
Тут главный вопрос, нахера вообще здесь асунц-авайт
Ну вообще, есть смысл в этом, я думаю. Но не в ретурне, а в самом коде
Nikolay
Ни малейшего, по-моему :)
Alpha
Т.е. мы сосём данные из разных источников, последовательность нам не важна
Nikolay
И почему бы просто не написать function getAll() { return Promise.all([...]); }
Alpha
Не, смотри: async function processShitAndCrap() { let {shit, crap} = Promise.all[getShit(), getCrap()]; return shit + crap; }
Alpha
Примерно так
Nikolay
Ну ты выдумал какую-то свертку еще, а речь именно о том коде, что выше :))
Alpha
А, ну да
Nikolay
Еще и эвейт забыл 😁
Alpha
ага
Alpha
Факт
Roman
но я везде пишу async все нормально
Roman
а ситуаций с Promise.all на самом деле очень мало
Туся
Не, смотри: async function processShitAndCrap() { let {shit, crap} = Promise.all[getShit(), getCrap()]; return shit + crap; }
Вполне можно написать и так async function processShitAndCrap() { const shit = getShit(); const crap = getCrap(); await shit; await crap; return shit + crap; } Если уж хочется async-await. Promise.all скорее для реально массивов и однотипных данных.
Dika
Вполне можно написать и так async function processShitAndCrap() { const shit = getShit(); const crap = getCrap(); await shit; await crap; return shit + crap; } Если уж хочется async-await. Promise.all скорее для реально массивов и однотипных данных.
Тут shit + crap - это сложение промисов. Нужно так: async function processShitAndCrap() { const shitP = getShit(); const crapP = getCrap(); const shit = await shitP; const crap = await crapP; return shit + crap; }
Туся
согласна, косякнула, именно так
Roman
чет эта тема всплывает тут раз в три дня
Roman
сколько у вас на проекте реальных случаев где надо Promise.all ?
Alpha
А вот вам зато вопрос по тестированию: - есть основной код, пусть это будет root.js - есть какой-то модуль который им эксплуатруется, пусть это будет dependency.js - этот модуль имеет свои зависимости, например includedDependency.js А теперь самое интересное: когда запускаются тесты, сперва же выполняются require(...) и т.п.. Внимание, вопрос! Как мне мокнуть dependency да ещё так, что бы не выполнялся includedDependency?
Alpha
Боюсь как бы через инъекцию не пришлось делать
Vlad
Прекрасный вопрос
Roman
если просто практика - сделай систему учета домашних финансов 😄
Anonymous
Привет всем, а тут можно найти талантливого программиста?
iwannafly
Можно
Pavel
Привет всем, а тут можно найти талантливого программиста?
Тут все талантливы в каком-то роде, кто-то талантливо говнокодит, а кто-то не менее талантливо это разгребает 😂
Andrew
как правильно additional_data отправить?