free nudes, naked, photos,

便利便利と言われつつも使ってみないと良さがわからないのがDeferred Object。身近なところで言うと、$.ajaxが返す、doneとかfailとかを呼べるアレもDeferred Objectです。使いこなすと色々な処理をコールバックを渡すよりもうちょっと綺麗に書けるようになります。 ということで最近プロジェクトで使ったパターンを中心に例をあげてみます。 コードはすべてCoffeeScriptの擬似コードです。 まず最初に便利な書き方を覚える Deferred Objectは$.Deferred()で作るわけですが、これには「作られたDeferred Object自体を引数にとる関数」を引数として渡せます。これを利用すると d = $.Deferred() doSomethingWithCallback -> d.resolve() d を $.Deferred (d) -> doS
以前の記事(コチラ→jQueryで順番にアニメーションする方法を考える)で、コールバック関数とdelay()を使って、順番にアニメーションする方法をご紹介しましたが、 今回はjQuery Defferdを使って、処理する順番をよりわかりやすくしてアニメーションする方法をご紹介いたします。 jQuery Defferdの使い方については、コチラのサイトを参考にさせていただきました→「爆速でわかるjQuery.Deferred超入門」 前回の方法を使った場合、並べるアニメーションの数が少ない場合は問題ありませんが、 並べるアニメーションの数が増えてきた場合は、 コールバック関数の中にコールバック関数があるという入れ子の状態が多重になり、 とてもプログラムとして見にくいものとなります。 また、順番を入れ替える必要が出てきたときにも、書き換える作業が煩雑になってしまいます。 その問題を解決してくれ
JavaScript - コールバック……駆逐してやる…この世から…一匹…残らず!! - Qiita この記事、「対象読者は JavaScript道初段くらいの人です」を「初級くらいの人です」と誤読したまま読み進めてひどい目に遭いました。初段への道は遠い……! ただ、もう少しマシな書き方があるなあ、と思ったので記事にします。 jqXHRオブジェクトは代入してから使うと見通しが良い $.when( $.get("hoge.txt"), $.get("piyo.txt"), $.get("nyan.txt"), // 増えた $.get("myon.txt"), // 増えた $.get("pong.txt"), // 増えた $.get("chun.txt") // 増えた ).then(function( hoge, piyo, nyan, // 増えた pong, // 増えた myon
このテキストは JavaScript のコールバック地獄に疲れたひとのためのコールバック駆逐術指南書です。対象読者は JavaScript道初段くらいの人です。このテキストを読むと、以下のそれぞれの手段における非同期処理制御の仕組み、利点および欠点がわかるようになるかもしれません。 コールバック地獄 jQuery.Deferred async.js Concurrent.Thread generators co fibers Web Workers (※なぜか『進撃の巨人』の一部ネタバレが含まれるので注意してください) それは『何故人はコールバックするのか』という話でしょうか? 非同期処理って面倒ですよね。JavaScriptではいわゆる コールバック地獄 というやつにしばしば陥りがちです。たとえば、Ajax でふたつのファイル hoge.txt と piyo.txt を持ってきて、それら
結局jQuery.Deferredの何が嬉しいのか分からない、という人向けの小話 一年ほど前に JavaScript - jQuery.Deferredを使って楽しい非同期生活を送る方法 - Qiita [キータ] という記事を書きました。 で、一年経って、ふと、「もっと分かりやすくjQuery.Deferredの便利さを説明できるんじゃないか」と思い立ってざざざっと書いてみました。 小話と言うにはちょっと長いけど。 -- jQuery.Deferredを使うと嬉しいのは、jQuery.Deferredの仕様を満たす部品同士を簡単に組み合わせることが可能だからです。中には処理を書き下すことができるとかコールバックのネストを防げるのがいいとか言う人もいますが、個人的にこっちのほうがよっぽど重要だと感じます。 例えるならレゴブロックです。レゴブロックはあの凸と凹を持ってるブロックを自由に組み合
■ jQueryのDeffered/Promiseを会得した(いまごろ) なんか最近、やたらと非同期処理の文脈で「promise」というキーワードを見ることが増えて、なんか流行ってんのかなーくらいにしか思ってなかったんだけど、実はjQuery.ajaxを使っているときに恩恵を受けていたことを(いくつか実装してみて)ようやく理解したのであった。Deffered/Promiseが実装されたのは、もう2.0もなろうというjQueryが1.5のころの話である。鈍すぎる……。 というのも、あんまり理解せずにコピペしていたからなんだよな。かつてはこんな感じに書いていたjQuery.ajaxの呼び出しが: jQuery.ajax({ type: 'POST', url: '/', ..., success: function(){...}, error: function(){...} }); 何かのソ
2013年02月14日10:48 カテゴリprogramming jQueryを用いた美しいajax処理 こんにちは、Research Panel Asia の関口(@takkyuuplayer)です。 jQueryを用いた非同期処理の待ち合わせについて書きたいと思います。 昨今WebにリッチなUIが求められていますが、その際によく遭遇するのが次のような処理です。 「処理A(非同期)が終わってからその結果を元に処理Bを行いたい。」 jQuery.getなんかでデータを取ってくる際には必須ですね。このような非同期処理の待ち合わせはjQuery.Deferredを使うと簡単に実現可能です。 jQuery.Deferred ex1.html <!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8" /> <title></titl
ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog Yahoo!デベロッパーネットワークの中野(@Hiraku)です。これまで、JavaScriptで非同期処理を書く上での問題として、コールバック地獄やエラー処理に例外が使えないことなどを解説してきました。 これらの問題に対処するライブラリの1つであるjQuery.Deferredに関して、もう少し丁寧に解説いたします。なお、jQueryのバージョンは記事執筆時点の最新である、1.9.1を想定しています。 jQuery.Deferredとは jQuery.DeferredとはjQueryのバージョン1.5から導入された、非同期処理をうまく扱うための標準モジュールです。使いこなすことで、以下のような効果が見込めます。 非同期処理を連結
カーテンのない家には住めない事に気がついたminamiです。 jQueryにはjQuery.Deferred というオブジェクトがあります。jQuery 1.5 のころから実装されてだいぶ経っているのですが、今までなんとなくよくわからなくて苦手意識があったので改めて使ってみました。 jQuery.Deferred ってなに? "deferred" の意味を調べると「延期された」「遅延された」などの意味があります。乱暴にまとめてしまうと、様々な処理が終わった後に呼ばれる(遅延された)処理を監視してくれるオブジェクトと言えます。 何を言っているのかわからん 文章で書くとまどろっこしいのでサンプルを作りました。1~4の処理が全て終わったら完了の表示を出します。 jQuery.Deferred を使った処理の管理 window.setTimeout() などのタイマー処理 jQuery.ajax
1 月 24 日に開催された Kyoto.js meetup 4 で「jQuery のバグを見つけてから修正されるまで」と題した発表を行いました。 jQuery へのコミットに関して 2 行でまとめるとすれば次のようになるでしょうか。 jQuery のソースコードはショートコーディングの嵐なので心してかかる Contributing to jQuery と jQuery Core Style Guidelines は必読 発表の筋書きは以下の通りです。 jQuery のバグを見つけてから修正されるまで フォロー・ミー nanto_vi (TOYAMA Nao) 株式会社はてな アプリケーションエンジニア クライアントサイド (JavaScript) サーバーサイド (Perl) jQuery をバリバリ使っている Deferred イベント DOM 操作 ある日どこかで 街中にクリスマスの
jQuery 3.4.0, 3.4.1 のリリースノートを読んで、 自分なりにまとめました。 script 要素の追加の際の独自属性のサポートや性能改善、 バグ修正などが含まれています。 箇条書きを含めた簡単なまとめになります。 誤訳による間違いなどもあると思われますので、 その辺はご留意下さい。 続きを読む jQuery 3.3.0, 3.3.1 のリリースノートを読んで、 今さらですけど自分なりにまとめました。 といっても、jQuery 3.3.1 の方はコード自体に変更はありません。 npm や GitHub からインストールする場合には関係ありますが、 CDN から利用している場合は 3.3.0 の方で問題ありません。 class 関係のメソッドで新しい用法が導入された他、 色々な機能が deprecated になりました。 箇条書きを含めた簡単なまとめになります。 誤訳による間違
jQuery 1.8でDeferred.thenの挙動が変わった JavaScriptを書いていて楽しいのがDeferredの処理。その仕組みはjQueryでも実装されていますが、このDeferred、1.8からDeferred.thenの挙動がDeferred.pipeと全く同じになりました。それまでのthenは単純にdeferred.done().fail().progress()のエイリアスでした。 #11010 (Make Deferred.then == Deferred.pipe like Promise/A) – jQuery Core - Bug Tracker このせいで非同期処理が動かず、いつもならさくっと上げられるバージョンがまだ1.7系のままです! 具体的に困るのはthenの後にdone、failを続けている場合にコールバック引数が渡らなくなること。 var d =
12 月 13 日に Kyoto.js の第 3 回 meetup で、「jQuery で HTTP 接続するときの書き方」と題した 5 分間のライトニングトークを行いました。以下にその内容を一部再構成して収録します。 こんにちは、nanto_vi です。今日は jQuery で HTTP 接続をするときの書き方について話します。 皆さん jQuery を使うことも多いかと思います。jQuery で HTTP 接続をするとき、古いサンプルだと次のような書き方が載っています。 $.ajax({ url: '/foo/bar', data: { baz: 'qux' }, success: function (data) { console.log(data); }, }); 接続完了時の処理をコールバック関数として $.ajax() に渡してやる形ですね。しかし、現在この書き方は非推奨となっ
脳内棚卸 Prototype.js と プロトタイプ汚染(昔話) jQuery が登場する以前、Prototype.js という JavaScript ライブラリがありました。 Prototype.js は、JavaScript OOP の普及期(2005~2007年頃)に多くのサイトで活用されました。 Prototype.js は Object.prototype や Array.prototype 以下に、Ruby 由来のメソッドを拡張することで、 JavaScript に Ruby 感をもたらし、ブームを起こしました。 当時の JavaScript(ES3: ECMAScript262-3rd) には、 言語仕様として Object.prototype を安全に拡張する方法が存在せず、 Prototype.js はしばらく後に 汚染(pollution) と呼ばれる問題を起こしてしま
Creating Responsive Applications Using jQuery Deferred and Promises Julian Aubourg, Addy Osmani | March 24, 2011 Today we’re going to explore the concept of deferreds - an important feature found in JavaScript toolkits such as dojo and MochiKit, which recently also made its debut to popular JavaScript library jQuery. Deferreds offer a solution for abstracting non-blocking elements (such as the res
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く