Jordane Grenat @JoGrenat
myAsyncCall()
.then(data => console.log(data))
.catch(err => console.error(err));
myAsyncCall()
.then(data => data.user)
.then(user => console.log(user));
myAsyncCall()
.then(userId => getUserAsync(userId))
.then(user => console.log(user))
.catch(error => console.error(error));
Promise.all([promise1, promise2])
.then(data => {
console.log(data[0], data[1]);
});
function *myGenerator() {
yield 1;
yield 2;
}
const it = myGenerator();
console.log(it.next().value); // 1
console.log(it.next().value); // 2
function *myGenerator() {
const value = yield 1;
yield 2;
yield value;
}
const it = myGenerator();
console.log(it.next().value); // 1
console.log(it.next('Hello').value); // 2
console.log(it.next().value); // 'Hello'
function *myGenerator() {
try {
yield 1;
} catch(err) {
console.error(`Error: ${err}`);
}
}
const it = myGenerator();
console.log(it.next().value); // 1
it.throw('SomeError'); // Error: SomeError
function *myGenerator() {
const user = yield getUserAsync();
console.log(user);
}
const it = myGenerator();
const promise = it.next().value;
promise.then(it.next); // show user
co(function*() {
const user = yield getUserAsync();
console.log(user);
});
async function myFunction() {
const user = await getUserAsync();
console.log(user);
}
myFunction();
Stade 3: not in ES2016
const source = Observable
.fromEvent(button, 'click');
source.subscribe(event => {
console.log('Someone clicked!', event);
});
Stade 1... but usable with RxJS
Jordane Grenat @JoGrenat
#DevoxxFR #AsyncSync @JoGrenat