タグ

JavaScriptとQiitaに関するsyanbiのブックマーク (7)

  • jasmineでsinon.fakeServerを使うときに気をつけること - Qiita

    sinon.jsを使うと、XMLHttpRequestをテスト用のオブジェクト(実際に通信は行わない)に置き換えることができる。 これがすごい便利で良いのだけど、fakeServerを使った時にはまった。 たとえば、hogeClientを実行すると、なんやかんやあってsomeObjectのsomemethodが呼び出されることをテストしたいとする。 var server = sinon.fakeServer.create(); server.autoRespond = true; server.respondWith( function( xhr, id ) { xhr.respond( 200, null, "..." ); } ); spyOn( someObject, "somemethod" ); hogeClient.request( ... ); expect( someObj

    jasmineでsinon.fakeServerを使うときに気をつけること - Qiita
  • AngularJSのDIの仕組み、minify対策は覚えておこう! - Qiita

    DI (Dependency Injection)ってのは日語では依存性注入とも呼ばれ、大雑把に言うとAngularJSがコントローラなどに必要とされているコンポーネント(オブジェクト)をいい感じに渡してやる機能です。 ここでは特にAngularJSのDIがどのような仕組で動いてるか、そしてその独特なDIの実装にまつわるトラブルケースを説明します。 AngularJSのコントローラの書き方 まずはAngularJSの中心的な機能であるコントローラの書き方には、簡単版と面倒版の複数の書き方があることを抑えておきましょう。 パターン1(グローバル関数パターン) サンプルとかでよく見るのは↓こういうグローバル関数の形のコントローラです。

    AngularJSのDIの仕組み、minify対策は覚えておこう! - Qiita
  • Javascriptで扱えるカッコイイグラフのまとめ - Qiita

    結論:Highchart ccchart(canvasChart)と悩みましたが、Highchartを選んだ理由は、下記の通りです。 1.円グラフや棒グラフを組み合わせた複合的なグラフのサンプルを載せている 2.複合グラフのアニメーションがかっこいい 商用ライセンスなので、無料にこだわる方は、ccchart(canvasChart)がおすすめです。 Highchart 表現力、完成度の点でいちばんだと思います。商用なのでお金さえあればこれがイチオシ。 ccchart(canvasChart) 私のイチオシは canvasChart です ライセンスは PUBLIC DOMAIN! raphael.js qiitaのプロフィールの円グラフで使われているjQueryプラグイン 美しめなグラフを作成することができる。 raphael.jsのプラグインのelycharts.js http://el

    Javascriptで扱えるカッコイイグラフのまとめ - Qiita
    syanbi
    syanbi 2013/10/06
  • 圧縮を意識したJavaScript - Qiita

    javascriptのソースコードを圧縮、最適化した場合はどんな感じになるの? 圧縮、最適化を意識したコードって? っていう話です。 簡単にできる事として、 ・ローカル変数に置き換える ことが挙げられます。 圧縮・最適化ツールの代表例 Closer CompilerやYUI Compressorの二つが挙げられます。 圧縮・最適化の例 例1 function show() { console.log('a'); } show(); // minify function show(){console.log("a")}show();

    圧縮を意識したJavaScript - Qiita
  • 食べられないほうのカリー化入門 - Qiita

    『カリー化』(Currying) という概念をご存知でしょうか。"Curry" はべ物のカレー(Curry)と同じスペルですが、ここでいう Curry はそれとは別のもので、多くのプログラミング言語に応用できるかもしれない、とても便利かもしれない概念です。 では教えてくれ。”カリー化”とはなんのことだ? 『ふたつの引数のうち、大きい方の数を返す』という機能を持った関数 max を実装したいとしましょう。そのようなとき、大抵は次のように定義すると思います。 この関数 _max も『大きい方の数を返す』という機能を持っていますが、_max は max とは呼び出し方が少し異なります。たとえば、_max で 1 と 2 のうち大きい方を求めるには、 _max(1)(2) のように書きます。 _max が通常の max と異なるところは、関数を呼び出すときに引数をひとつづつ渡すようになっていると

    食べられないほうのカリー化入門 - Qiita
  • 結局jQuery.Deferredの何が嬉しいのか分からない、という人向けの小話 - Qiita

    結局jQuery.Deferredの何が嬉しいのか分からない、という人向けの小話 一年ほど前に JavaScript - jQuery.Deferredを使って楽しい非同期生活を送る方法 - Qiita [キータ] という記事を書きました。 で、一年経って、ふと、「もっと分かりやすくjQuery.Deferredの便利さを説明できるんじゃないか」と思い立ってざざざっと書いてみました。 小話と言うにはちょっと長いけど。 -- jQuery.Deferredを使うと嬉しいのは、jQuery.Deferredの仕様を満たす部品同士を簡単に組み合わせることが可能だからです。中には処理を書き下すことができるとかコールバックのネストを防げるのがいいとか言う人もいますが、個人的にこっちのほうがよっぽど重要だと感じます。 例えるならレゴブロックです。レゴブロックはあの凸と凹を持ってるブロックを自由に組み合

    結局jQuery.Deferredの何が嬉しいのか分からない、という人向けの小話 - Qiita
  • XMLHttpRequestを途中で止める - Qiita

    タイムアウトを実装する 具体的な利用場面としては、XHRにタイムアウトを設定したい場合。普通にしているとタイムアウトするまでに60秒待たされたりするので、それを例えば10秒でタイムアウトさせたい場合はこんな感じで書けます。 // XMLHttpRequestを発行する var jqXHR = $.ajax({ url: '…' }); jqXHR.fail(function () { console.log('Fail'); }); setTimeout(function () { // 10秒後まだpendingだったらabortする。 if (jqXHR.state() === 'pending') jqXHR.abort(); }, 1000 * 10);

    XMLHttpRequestを途中で止める - Qiita
  • 1