タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

JavaScriptとJavascriptとdeferredに関するagwのブックマーク (236)

  • JavaScriptでIteratorを書く - あと味

    最近、Wordpress絡みでPHPを書くことが多くて、かつバージョンも5.2だったりするので、高階関数とか無名関数とかが無性に使いたくなります。 ということで、JavaScriptIteratorでも書いて心の平静を保つことにします。 クロージャ版Iterator これが書けるJavaScriptは素敵だ。 使用例 var iter = iterator(document.getElementsByTagName('a')); console.log(iter.next()); console.log(iter.prev()); クラスメソッド版Iterator メソッドチェーンのこと好きです。付き合ってください。 使用例 Iterator([1,2,3]).next().get(console.log).prev().get(console.log).next().get(); ge

    JavaScriptでIteratorを書く - あと味
  • Javascriptのthisと僕の可愛い妹 - tumblr

    久しぶりにJSいじってて、やるうちに文法とか制御構文とかIEに対する怒りとか色々思い出してきて、特にthisとか大事だと思ったので覚書。 thisって最初やったときは超鬼門だった。this使ってオブジェクト参照してたら全く違うもの参照しててデバッグに滅茶苦茶苦労したり。文脈によって中身が全く違う。訳わかんない。超八方美人。僕の妹みたい。今日ある男を家に連れ込んできたと思ったら、次の日は全く違う男と歩いてやがる。普段は僕のことなんかキモイとか言ってゴキブリとかvimmerとかと同等に扱って邪険にするくせに、たまにやたらボディタッチとかしてきて異常に甘えてくるときがある。訳わかんない。 でも、Javascriptのthisにしても、僕の妹にしても、その何かになびくポリシーさえ分かれば扱いは簡単だった。 thisってのはつまるところ、それの関数がどのオブジェクトのプロパティとして呼び出されたのか

    Javascriptのthisと僕の可愛い妹 - tumblr
  • Function.prototype.bindは何がいいのか - 枕を欹てて聴く

    ES5からFunction.prototype.bindが入りました. これに準ずるものは数々のFrameworkで提供され続けてきたので, あまり馴染みの無さはないのではないでしょうか. このFunction.ptototype.bindは実はとても面白いので. 結論から言えば, Function.prototype.bindはtarget functionのConstructに完全に移譲するのでConstructorの引数束縛が行えます. またConstructor callに対して配列を渡すapply形式のものといったapplyConstructorやcallConstructorをbindを使って実装することができます. 基 Function.prototype.bindは基的にはthisとargumentsに特定の値を束縛する関数です. bindは第一引数にthis, 次から

    Function.prototype.bindは何がいいのか - 枕を欹てて聴く
  • はてなブログ | 無料ブログを作成しよう

    ベルリン&ポーランド旅行での事を一挙公開! 2025年の7月、戦後80周年ということで、「もうひとつの敗戦国ドイツ」と「アウシュビツ」を訪れる12日間の「ちきりんオリジナルツアー」を催行しました。今回のツアーでは、事の内容まで事前打ち合わせを行い、しかもかなり細かく(旅行会社に)希望を伝えたため、大…

    はてなブログ | 無料ブログを作成しよう
  • [JavaScript] うろ覚えだった `RegExp` オブジェクト をしっかり学習した

    RegExp は 正規表現(Regular Expression)の略。以下、参考サイト。 正規表現(RegExp)RegExp - MDC Doc CenterRegExp オブジェクトの中身は?RegExp オブジェクトのプロパティには 直前の マッチングに関する情報が入る。じゃあ何が入っているのか? //とりあえずなにもせずに調べてみる function dump( obj ){ var str = ''; for(var k in obj){ str += k + "("+typeof(obj[k]) + ") | " + obj[k] + "\n"; } document.write( str ); } dump( RegExp ); input(string) | message.Reload to activate window console multiline(boole

  • [JavaScript] typeof arg == 'undefined' っていらないんじゃね? / LiosK-free Blog

    2008-09-24 カテゴリ: Client Side タグ: Tips JavaScript 以前にも JavaScript の null と undefined に関する記事を書いたことがあったが、またしても性懲りもなく null と undefined の挙動につまずいて、 ECMAScript 3 の仕様書まで調べ直したので、メモ代わりにエントリー化。 Abstract このエントリーの内容をざっくりとまとめると、 something == null がどういう値を返すのかが気になって、ECMAScript 3 の仕様書までさかのぼって調べてみると、 null == null undefined == undefined null == undefined undefined == null のパターンでのみ true を返すということがわかった、という話。細かい経緯は続きで。

  • JSDeferred 紹介

    JSDeferred について JSDeferred は JavaScript のコールバックによる非同期処理を直列的に書けるようにするために作られたライブラリです。 foofunc(function () { barfunc(function () { bazfunc(function () { }); }); }); foofunc().next(barfunc).next(bazfunc); 簡単な使いかた 読み込み まずは JSDeferred を使うために、HTML に script 要素を追加します。 <script type="text/javascript" src="jsdeferred.js"></script> <script type="text/javascript" src="my.js"></script> JSDeferred は外部ライブラリに依存しておら

  • お手軽 Deferred を作ってみた - IT戦記

    昨日 id:cho45 たちと飲んで deferred のメリットを教えてもらいました>< で、僕も色々考えて自家製を作ってみました。 自家製 deferred 用関数 var defer = function(f) { var fs = []; if (f) fs.push(f); var deferred = function(f) { if (f) fs.push(f); setTimeout(function() { while (fs.length) { var f = fs.shift()(); if (f && f.isdeferred) { setTimeout(arguments.callee, 0); break; } } }, 0); return function(f) { if (f) fs.push(f); return arguments.callee; }

    お手軽 Deferred を作ってみた - IT戦記
  • サイボウズで学んだこと - IT戦記

    はじめに 2010 年 9 月 15 日を持ちまして、サイボウズ・ラボを退職いたしたました。 報告も兼ねて、久しぶりにブログを書いてみたいと思います。 (写真はゆうすけべーさんです) この会社に入って、たくさんの学びと思い出がありました。 その一つ一つをまとめていければ、素晴らしい記事になるのかもしれませんが、僕は文章が苦手です。 ですので、うまく退職のエントリを書き上げることができません。 言葉にできない。そんな感じです。 なので、このエントリはサイボウズ・ラボやサイボウズ社の仲間たちへのありがとうの気持ちをこめて、自分らしく最後まで JavaScript のことを書きたいと思います。 サイボウズでの最後の仕事 僕にとって、サイボウズでの最後の仕事は「JavaScript で新しいユーザーインタフェースを作ること」でした。 そして、その中で始めて複数人による大規模な JavaScrip

    サイボウズで学んだこと - IT戦記
  • JavaScriptによるマルチスレッドの実現‐Concurrent.Threadの裏側

    function f ( ) { do_something(); do_another(); do_one_more(); } このプログラムでは順番に3つの関数を呼び出していますが、各関数呼び出しの間でいったんスレッドの実行権を他のJavaScriptコードに渡したいとします。これは次のように、各関数呼び出しをそれぞれ別の関数に分けて、間にsetTimeoutを挿むようにプログラムを書き換えることで実現できます。 function f ( ) { do_something(); setTimeout(f1, 1);  // 1ミリ秒後にf1を呼び出す } function f1 ( ) { do_another(); setTimeout(f2, 1); } function f2 ( ) { do_one_more(); } こうして書き換えた関数fを、 f(); f(); のようにし

    JavaScriptによるマルチスレッドの実現‐Concurrent.Threadの裏側
  • InfoQ: JavaScriptへのマルチスレッド・プログラミングの導入

    あなたにとって重要なトピックや同僚の最新情報を入手しましょう最新の洞察とトレンドに関する最新情報を即座に受け取りましょう。 継続的な学習のために、無料のリソースに手軽にアクセスしましょうミニブック、トランスクリプト付き動画、およびトレーニング教材。 記事を保存して、いつでも読むことができます記事をブックマークして、準備ができたらいつでも読めます。

    InfoQ: JavaScriptへのマルチスレッド・プログラミングの導入
  • JavaScriptのcall.applyの不思議 (wtfjsを解説) - 風と宇宙とプログラム

    wtfjsに下のような面白いものが登録されました。 alert.call.call.call.call.call.apply(function (a) {return a}, [1,2]) // 2 確かに、どうしてこうなるのかは直ぐには分かりません。一つ一つゆっくりと確認してみましょう。 関数コールのobj.func(arg,...)という形式は、obj.func部分の評価結果は参照型(reference type)となりますが、obj部分の評価結果は値になります。(詳しくは関連エントリ[2]をご覧ください) なので、 func1.func2.func3(arg,...); という形式は、func1.func2部分を評価して結果を変数に代入しても結果は変わりません。 つまり、下記のようにしても動作は同じです。 var fn = func1.func2; fn.func3(arg,..);

    JavaScriptのcall.applyの不思議 (wtfjsを解説) - 風と宇宙とプログラム
  • JavaScriptのundefinedというクセ者のいろいろ - 風と宇宙とプログラム

    はじめに JavaScriptの初心者にとってundefinedというのはちょっと混乱を招くものらしい。nullとの違いや使い分けがよく分からなかったり、数値やブール値との比較が不自然だったりするのが原因と思われる。ここでは、そのようなundefinedのいろいろについてまとめてみた。 ECMA262規格では undefinedとnullに関して、ECMA262規格では最初に以下のような記述がある。 4.3.9 undefined value primitive value used when a variable has not been assigned a value. 4.3.11 null value primitive value that represents the intentional absence of any object value. undefinedは変数に

    JavaScriptのundefinedというクセ者のいろいろ - 風と宇宙とプログラム
  • javascript - プロトタイプ的継承 : 404 Blog Not Found

    2006年10月18日09:20 カテゴリLightweight Languages javascript - プロトタイプ的継承 がーん。この感動はY combinatorを見たときに匹敵する。 Prototypal Inheritance function object(o) { function F() {} F.prototype = o; return new F(); } なぜこれがそれほど感動的かというと.... これを使えば、ArrayやObjectといったBuilt-Inからも難なく継承できるから。 継承のやり方としてはPrivate Members in JavaScriptが圧倒的に有名で、日でもbrazilさんによる邦訳、Collection & Copy - JavaScriptにおける古典的継承もよく知られていると思うけど、この三行を目の前にしては霞む。でもp

    javascript - プロトタイプ的継承 : 404 Blog Not Found
  • JavaScript の new 演算子の意味: Days on the Moon

    JavaScript における new 演算子の動作は大まかにいって以下のとおりである。(new F() とした場合。) 新しいオブジェクトを作る。 1 で作ったオブジェクトの [[Prototype]] 内部プロパティ (__proto__ プロパティ) に F.prototype の値を設定する。 F.prototype の値がオブジェクトでないのなら代わりに Object.prototype の値を設定する。 F を呼び出す。このとき this の値は 1 で作ったオブジェクトとし、引数には new 演算子とともに使われた引数をそのまま用いる。 3 の返り値がオブジェクトならそれを返す。そうでなければ 1 で作ったオブジェクトを返す。 ここで「オブジェクトである」というのはプリミティブ値 (文字列、数値、真偽値、undefined 、null) ではないということだ。new Stri

  • JavaScript で画像処理! canvas を使ってみよう - WebOS Goodies

    前述のとおり canvas 要素は Web ページ内に空の画像領域を確保します。感覚としては画像ファイルを指定しない img 要素のようなもので、Web ページ上での扱いもほぼ同じです。画像がないので src 属性がなく、代わりに width, height 属性で描画領域のサイズを明示しなければなりません。また、JavaScript で描画対象の canvas を特定するための id 要素を指定するのが普通です。例えば、150x150 ピクセルの描画領域を確保するには、以下のように記述します。 <canvas id="example_canvas" width="150" height="150"></canvas> 閉じタグを忘れると以降の内容が表示されなくなるので注意してください。詳細は後述しますが、canvas 要素内のテキストはブラウザが canvas をサポートしていないときの

  • MersenneTwister JavaScript Version

    March 2025 (1) January 2025 (1) November 2024 (1) July 2024 (1) June 2024 (2) January 2024 (1) September 2023 (1) April 2023 (2) March 2023 (1) November 2022 (3) October 2022 (1) September 2022 (1) June 2022 (1) July 2021 (1) May 2021 (1) April 2021 (2) February 2021 (1) January 2021 (1) September 2020 (1) July 2020 (2) March 2020 (1) August 2019 (1) April 2019 (2) August 2018 (1) May 2018 (1) Apr

    MersenneTwister JavaScript Version
    agw
    agw 2010/03/27
    メルセンヌツイスタのみならず、JavaScriptの実装に関しても大変良質なエントリ。
  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
  • 第4回 JSDeferredを使いJSアプリのパフォーマンスを最適化する | gihyo.jp

    前回まででJSDeferredの基的な使いかたを説明しました。 今回は「非同期処理を簡単にする」から一歩進んで、既存アプリケーションの「非同期処理でパフォーマンス改善する」ことや、その他応用できる部分について説明します。 UIスレッド JavaScriptが担当するアプリケーションユーザインターフェイスの「はやさ」とはなんでしょうか? 単純に、最速で処理が終わることというのも一つですが、それを含めて最も重要なのは、ユーザにストレスを与えないことでしょう。多少実行速度が遅くても大抵待っていられますが、インターフェイスがなんの反応もしないと大きなストレスになります。 JavaScriptを実行するブラウザには、UIスレッドを呼ばれる、システム入出力を処理する流れがあります。JavaScriptは、その性質上どうしてもUIスレッド上で動かす必要があります(JavaScriptを実行中にページの

    第4回 JSDeferredを使いJSアプリのパフォーマンスを最適化する | gihyo.jp
  • 第3回 JSDeferredを用いたアプリケーション開発(その2) | gihyo.jp

    前回に引き続き、Wikipediaから緯度経度を取得しGoogle Maps上にプロットするアプリケーションを作っていきます。 今回は透過的なキャッシュの仕組みを入れるのと、geolocation APIを用いて、データのロードが終わり次第自分の近くのマーカーを表示させてみたいと思います。 完成コードは以下のようになります。 今回作成するサンプル(完成品) 透過的なキャッシュ キャッシュのための領域として、localStorageというものを使います。これはFirefoxやSafariなどで実装済みの、簡単にいってしまえば大容量のCookieみたいなものです。 localStorageは同期的に値を取得やセットをできますが、キャッシュするデータはXMLHttpRequestで取得される非同期なデータです。この二つの条件分けを最小限にして実装するために、JSDeferredを間に挟むことにし

    第3回 JSDeferredを用いたアプリケーション開発(その2) | gihyo.jp