
はじめに 今更ですが最近ajaxを少し触るようになりました。 jQueryを使えば簡単にajax通信ができるため、単純なものであればそれほど実装は難しくないかと思います。 ですが少し複雑なことをやろうとしてみると、急にハードルが上がる気がします。 そこで自戒を込めて、ajax初心者の方に対してはじめにこれを知りたかったと思えるんじゃないかというものをまとめてみたいと思います。 ※jQueryを利用したajax通信を想定しています 目次 処理の順番を意識する $.ajax()の省略メソッドを知る イベントを知る デバッグ方法を知る 通信状況を想定する(タイムアウトを設定する) 連続クリックを防止する ← [New!] 連続通信を防止する ← [New!] 処理の順番を意識する ajaxを使用する場合は、非同期通信で処理したいケースがほとんどかと思います しかし単純にそのまま書いただけでは処理
こんにちは、最近隔週でやっている社内週末ハッカソンでElixirとGroovyを触ってニヤニヤしているプログラミング言語好きのedvakfです。次はClojureをやってみたいです。 弊社で開かれた第0回 東京 Web Performance - SIMD.jsを味見するというイベントで、SIMD.jsに触ってきました。 SIMD.jsはJavaScriptで高速なベクトル演算ができるAPIです。Firefox NightlyやMicrosoft Edgeで試せるそうです。ほとんど情報が無いので、集まった各自がググりながら使い方を調べてね♪というかなりストイックな集まりでした。 MDNに記事があるのですが、引数が書いてなかったり、現在のFirefoxのNightlyとAPIの乖離があったりして、かなりアルファな匂いがします。 https://developer.mozilla.org/ja
クラスの落とし穴1 - プロパティの初期化 (この投稿) クラスの落とし穴2 - メソッドとクロージャ クラスの落とし穴3 - 継承 クラスの落とし穴4 - プライベート変数の実装 はじめに javascriptでもクラスを作成する事が多くなってきました。 しかし、「javascriptにはクラスがない」とよく言われ、実装側が擬似的にクラスを定義しています。 クライアントサイドで大規模開発が増えてきたため、オブジェクト指向の概念で実装したいと思っているのでしょう。 javascriptでは安易な疑似クラスの作成によって見事落とし穴にはまる事があります。 ここでは、本来javascriptにはないクラスをうまく実装する方法を順に追って説明します。 "落とし穴とは、 うまく動いているけど気がついていないだけで実はマズい実装の事 とします 簡単なクラスの実装 クラスの定義には幾つかの方法がありま
自分はImmutable.jsとRxをなぜ採用しなかったか、自分の考えを整理するために書き出してみる。 僕の理解が及んでいない無知のゆえのアレもあると思うので間違っていたら罵倒ブコメお願いします。 Immutalbe(.js) 扱う対象をイミュータブルにするのはたぶん間違いなく正しい。正しいが、現時点のエコシステムにおいてその必要性を示せてない。具体的に言うと、Immutable.jsの110kbのオーバーヘッドの配信負荷、読み込み負荷、開発者の学習コストを支払ったとき、それに見合う価値を提示できているのか?にまだ疑問が残る。 PureなJSでも、ただ単に目的のデータを作るだけなら、ほとんどのケースで組み込みのarray.mapとObject.assign(またはそのポリフィル)で代用できる。(勿論生成したオブジェクトに副作用を加えないことが前提になるが) あと型がない環境でImmutab
Basic JavaScript programming knowledge. Additional required other products (third-party/labs/open source) Query Library Download / Learn この記事は、JavaScriptでよく使用されるデザインパターンに関するシリーズ記事の第1部です。デザインパターンはプログラミングにおける実証済みの手法であり、特に、大規模なJavaScriptアプリケーションを大きなグループで作成する場合に不可欠なコードの保守性、スケーラビリティ、分離性を向上させます。 このシリーズ記事の第2部では、さらに、アダプター、デコレーター、ファクトリという3つのデザインパターンを紹介します。第3部では、さらに、プロキシ、オブザーバー、コマンドという3つのデザインパターンを紹介します。 シング
<!DOCTYPE html> <html dir="ltr" prefix="fb: http://www.facebook.com/2008/fbml"> <head> <meta charset="UTF-8"> <script src="mithril.js"></script> </head> <body> <div id="contents"></div> <script> /* * Modelを定義 * ページ内の文言データを管理 */ var PageModel = function() { this.data = m.prop({}); this.fetch = function(){ var that = this; m.request({method: "GET", url: "page.json"}).then(function(resp){ that.data(r
Detecting CSS Animation and Transition End with JavaScript ? Osvaldas Valutis CSSアニメーションの終了をJSで検知してコールバックを実行できるJS CSSアニメーションの終了と共にJSを発火できるので便利そうです。 関連エントリ CSSアニメーションで音楽に視覚効果を与えられる「css-visualizer」 ページスクロールに応じて要素を様々にCSSアニメーションしつつ表示できる「Story Box」 CSSアニメーションによるクリックアニメーション実装チュートリアル CSSでアニメーションを交えながらコンテンツをカッコよくフィルタリングするデモ WEB上でCSS3アニメーションを組み立てられる「Bounce.js」
あらすじ Web技術が複雑になる中で、JavaScriptのプロファイリングをとる方法とは。 プロファイリングを取るためのコードを手で書いてみましょう。 とてもシンプルで、かつ最高のJavaScriptプロファイラ sjsp を作りました。 本当にあった怖い話 上司 「とにかくJavaScriptのコードを速くしてくれ」 私 「分かりました、速くします」 (次の日) 私 「いいプロファイラがないなら作ればいいじゃない」 同じチームの人 「えっ?」 私 「最高のJavaScriptプロファイラ作ったよ」 同じチームの人 「「えっえっ???」」 私 「早速使ってみたらこことここが遅いって分かったよ」 同じチームの人 「「「この子は一体…」」」 JavaScriptのプロファイリングの難しさ 近年、Webブラウザーの処理速度は著しく向上し、その可用性の高さから、アプリケーションのプラットフォーム
Stay Relevant and Grow Your Career in TechPremium ResultsPublish articles on SitePointDaily curated jobsLearning PathsDiscounts to dev toolsStart Free Trial7 Day Free Trial. Cancel Anytime. The HTML5 Local Storage API (part of Web Storage) has excellent browser support and is being used in more and more applications. It has a simple API and certainly has its drawbacks, similar to cookies. Over the
デモページ TTFB(Time to First Byte)やロード時間やリクエスト数などが表示され、数値はグリーンは良好、イエローは注意、レッドは超過となっています。 当ブログのパフォーマンスも表示させてみました。 Justiceのパネルの右上にあるボタンをクリックすると、非表示になります。 コリスでも試してみました。 対応ブラウザの明記はないのですが、Chromeでは全部表示され、Safariでは一部ダメでした。 Justice.jsの使い方 使い方は、2通り。 Webページに直接埋め込む 外部スクリプトとして記述することで、Webページで利用できます。 <script type="text/javascript" src="justice.min.js"></script> <script type="text/javascript"> Justice.init(); </scrip
ES6で Promise, co, ramda, FRP(bacon.js)を試す Tweet 先日、Javascriptでちょっとしたツールを書いたのですが、いい機会なので、これを題材に ES6 について勉強してみました。 最初にES5で書いたロジックを、次のようにいろいろなスタイルで書き直してみました。 元のES5バージョン そのままES6にしたバージョン Promise を使ったバージョン coというライブラリとgenerator というES6の新機能を使って逐次処理するバージョン ramda.jsを使って関数型プログラミングのスタイルで書いたバージョン bacon.jsを使ってFRPのスタイルで書いたバージョン ソースは、ここ です。 まだ、私自身勉強中なのですが、これをもとに ES6 の機能や新しいパラダイムについて簡単に紹介してみたいと思います。 例題 書いたツールは、誰かがA
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く