Size: a a a

JS Liberty [ОЫ]

2020 June 28

S

Syntax Highlight Bot in JS Liberty [ОЫ]
Lupusregina[beta]
const sleep = m => ({
 then(f) {
   setTimeout(f, m)
 }
})
источник

DE

Denis Efremov in JS Liberty [ОЫ]
Nikolai Reguliarniy
Я не очень понял, что ты имеешь в виду, но вроде мы говорим об одном и том же. Либо ты используешь колбеки, либо промисы. Async/await просто синтаксически скрывает вложенность возможных then. Но сами промисы и их использование он не заменяет, а колбеки как нижележащая концепция могут заменить промисы
.then в чейне? Или как?
источник

NR

Nikolai Reguliarniy in JS Liberty [ОЫ]
Nikolai Reguliarniy
Я не очень понял, что ты имеешь в виду, но вроде мы говорим об одном и том же. Либо ты используешь колбеки, либо промисы. Async/await просто синтаксически скрывает вложенность возможных then. Но сами промисы и их использование он не заменяет, а колбеки как нижележащая концепция могут заменить промисы
Есть ещё нюанс с микротаски, потому что цепочки из промисов обрабатываются движком в этой очереди, но это детали
источник

r

redhemd in JS Liberty [ОЫ]
в той не получилось, вот тут https://plnkr.co/edit/PBVAllwoZKb0OAj3?preview можно посмотреть

а вопрос такой:
как можно тут в тело документа, вывести массив, согласно заданию
источник

DE

Denis Efremov in JS Liberty [ОЫ]
Lupusregina[beta]
const sleep = m => ({
 then(f) {
   setTimeout(f, m)
 }
})
Ништяк, работает
источник

DE

Denis Efremov in JS Liberty [ОЫ]
redhemd
в той не получилось, вот тут https://plnkr.co/edit/PBVAllwoZKb0OAj3?preview можно посмотреть

а вопрос такой:
как можно тут в тело документа, вывести массив, согласно заданию
p.innerHTML = JSON.stringify(x);
источник

L

Lupusregina[beta] in JS Liberty [ОЫ]
Denis Efremov
Ништяк, работает
ну да, только надо понимать, что это не полноценный промис и
const s=sleep(1000);
await s;
console.log('x')
await s;
console.log('x')
будет ждать 2 сек
источник

S

Syntax Highlight Bot in JS Liberty [ОЫ]
Lupusregina[beta]
ну да, только надо понимать, что это не полноценный промис и
const s=sleep(1000);
await s;
console.log('x')
await s;
console.log('x')
будет ждать 2 сек
источник

DE

Denis Efremov in JS Liberty [ОЫ]
Промис гандон. Одноразовый
источник

NR

Nikolai Reguliarniy in JS Liberty [ОЫ]
Lupusregina[beta]
ну да, только надо понимать, что это не полноценный промис и
const s=sleep(1000);
await s;
console.log('x')
await s;
console.log('x')
будет ждать 2 сек
Полноценный промис только движком поддерживается, даже полифилы не совсем честно его имитируют
источник

r

redhemd in JS Liberty [ОЫ]
Denis Efremov
p.innerHTML = JSON.stringify(x);
спасибо ))
источник

DE

Denis Efremov in JS Liberty [ОЫ]
Lupusregina[beta]
ну да, только надо понимать, что это не полноценный промис и
const s=sleep(1000);
await s;
console.log('x')
await s;
console.log('x')
будет ждать 2 сек
То же самое будет если обернуть в промис addEventListener
источник

DE

Denis Efremov in JS Liberty [ОЫ]
Nikolai Reguliarniy
Полноценный промис только движком поддерживается, даже полифилы не совсем честно его имитируют
В чем разница?
источник

L

Lupusregina[beta] in JS Liberty [ОЫ]
Denis Efremov
То же самое будет если обернуть в промис addEventListener
да, это сработает. Но я бы генератор лучше взял
источник

NR

Nikolai Reguliarniy in JS Liberty [ОЫ]
Denis Efremov
В чем разница?
В микротасках
источник

СК

Сергей Косов... in JS Liberty [ОЫ]
А в for of можно сравнивать текущий элемент и предыдущий как-то?
источник

F

Foma in JS Liberty [ОЫ]
оо целая движуха пошла с промисами
источник

NR

Nikolai Reguliarniy in JS Liberty [ОЫ]
Сергей Косов
А в for of можно сравнивать текущий элемент и предыдущий как-то?
Никак, используй цикл обычный или reduce
источник

DE

Denis Efremov in JS Liberty [ОЫ]
Сергей Косов
А в for of можно сравнивать текущий элемент и предыдущий как-то?
Запоминая
источник

F

Foma in JS Liberty [ОЫ]
Lupusregina[beta]
const sleep = m => ({
 then(f) {
   setTimeout(f, m)
 }
})
на классах есть подобна фигня
источник