タグ

promiseに関するlesamoureusesのブックマーク (6)

  • How do I convert an existing callback API to promises?

    I want to work with promises but I have a callback API in a format like: ###1. DOM load or other one time event: window.onload; // set to callback ... window.onload = function() { }; ###2. Plain callback: function request(onChangeHandler) { ... } request(function() { // change happened ... }); ###3. Node style callback ("nodeback"): function getStuff(dat, callback) { ... } getStuff("dataParam", fu

    How do I convert an existing callback API to promises?
    lesamoureuses
    lesamoureuses 2015/04/17
    callback を promise で包んでるところでどうもブロックしちゃってるので読み直してる
  • 最近のjs非同期処理 PromiseとGeneratorの共存 - Qiita

    (2015/10/21追記) 記事を書いてから半年経ちましたが、最近はRxの良さを理解したり、ES7のasync/awaitがbabelによって実用的になりつつあったり等、またもやベストプラクティスとはなんだったのか状態です。とはいえ、いまのところPromiseは非同期処理の土台であり続けそうですし、Generatorもasync/awaitへの足がかりとして知っておくことのメリットは大きいかと思いますので、引き続き公開させたままとさせて頂きます。 (追記ここまで) 数ある非同期処理のプラクティスを試してみて、だいたいこれが良いんじゃないかというパターンが固まったので書きます。効用はコールバック地獄からの脱出と結局非同期どれが良いの感の払拭。ES6寄りです。 前提知識 JavaScript Promiseの http://azu.github.io/promises-book/ ジェネレ

    最近のjs非同期処理 PromiseとGeneratorの共存 - Qiita
    lesamoureuses
    lesamoureuses 2015/03/30
    ほーほーこう書けば良いのかー “ということで、Generatorとcoを使って直感的に処理する。 coはpromiseのインターフェイスにも対応しているのでそのままyieldに渡すことが出来る。”
  • Node.jsエンジニアなら2014年内に知っておきたいPromise入門 | Tokyo Otaku Mode Blog

    Promiseは非同期処理をベースにした並列処理の実装方法の一種です。Promiseでは並列処理の各タスクが必ず1回実行されることが保証され、タスクとタスクからの結果を取得する処理を分離することできます。また、タスクの並列処理/直列処理をユーザーが自由に制御することができます。 ECMAScript Language Specification 6th EditionにPromiseが追加されたことから、しばらくの間JavaScriptの非同期処理に関する話題の中心はPromiseになると思われます。 Node.jsでも既にPromise対応したモジュールも多く、Promiseでのみ非同期処理を提供しているモジュールも存在します。Promiseを使用する機会は今後必然的に増えていくでしょう。 今回のエントリーでは、Node.jsでPromiseを使用する方法を説明します。コード例を中心に理

    Node.jsエンジニアなら2014年内に知っておきたいPromise入門 | Tokyo Otaku Mode Blog
    lesamoureuses
    lesamoureuses 2015/03/25
    配列からどうやって作るか迷っていたけど答えが書いてあった “Promiseでの逐次実行はメソッドチェインになりますので、Array.reduceでメソッドチェインを作成する処理がasync.eachEachと同じ処理になります”
  • #error_handling_sushi でPromiseのエラーハンドリングについて発表した

    #error_handling_sushiJavaScriptのエラーハンドリングについて議論した。 自分はPromiseのエラーハンドリングの握りつぶしの問題を見つけやすくするイベントの実装について、Promise Error Handlingという話をした。 ログ: #error_handling_sushi - Togetterまとめ #error_handling_sushi 始まった #寿司とは pic.twitter.com/XZe21QTsDO — Takuto Wada (@t_wada) March 6, 2015 – 基調講演 - teppeis これが #error_handling_sushi pic.twitter.com/vSLDpthYi4 — azu (@azu_re) March 6, 2015 #error_handling_sushi 基調講演 一

    #error_handling_sushi でPromiseのエラーハンドリングについて発表した
    lesamoureuses
    lesamoureuses 2015/03/09
    うぐぐ “Promiseでのエラーハンドリングはやっぱり皆悩んでる”
  • Promiseのcatch内でのreturnとthrow

    Promiseの(Promiseと言ってもES6 Promisesじゃなくてbluebirdなんだけど)catch内でのreturnとthrowの挙動の違いについて知らなくて試したのでメモ。 環境はnode.js 0.10.33とbluebird 2.3.11です。 var Promise = require('bluebird'); function a() { return new Promise(function(resolve, reject) { reject(1); }).catch(function(err) { return err; }); } a().then(function(data) { console.log('then'); console.log(data); });

    lesamoureuses
    lesamoureuses 2014/11/23
    “throwとか使うよりnew Promiseしてrejectを使ったほうがいい”
  • JavaScript Promiseの本

    この書籍はCreative Commons Attribution-NonCommercialの ライセンス で公開されています。 また、PDFとしてレンダリングしたバージョンは以下からダウンロードすることができます。

    JavaScript Promiseの本
  • 1