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.
オンライン勉強会の Jetpack 入門に参加して Jetpack のソースコードを読んでいたら、Iterator を関数として呼び出したときとコンストラクタとして呼び出したときとでは挙動が違うということを知りました。 Iterator の動作 オブジェクト o に対して for-in 文、for-each-in 文を実行したとき、及び Iterator 関数、Iterator コンストラクタを呼び出したときの (SpiderMonkey の) 動作は、それぞれ次のようになります。 コード o が __iterator__ メソッドを持つとき o が __iterator__ メソッドを持たないとき for (... in o)
肩こり歴20年のagoです。 社内でもjQueryを使う人間が増えてきたので、jQueryを使う人が陥りやすい罠をいくつかあげてみたいと思います。 (私が過去にはまったり、今はまっている罠です) 1 グローバルの名前空間を使わない jQueryはwindow objectの汚染が少なくほかのライブラリとの共存が行いやすいですが、特定のサイト向けに開発する場合window objectを使用してもそれほど問題は発生しません。 しかしjQueryに慣れるとwindow objectの使用をいかに避けるかを考えるようになり、jQueryと関係ないfunctionや変数まで$.hogehogeに実装しようとしてしまいます。 これはwindow objectの代わりにjQuery objectを汚染しているだけなので、素直にwindow objectを使用したほうが普通に実装しやすいでしょう。 2
クラスメソッド株式会社 福田 寅成 2009/7/10 昨今関心が高まる一方のクラウドだが、クラウドの“クライアント”についてはあまり取り上げられないのが現状だ。本連載では、同じく未知の可能性を秘めるRIAをクライアントにして、サンプルを基にクラウドとの連携アプリケーションを検証していく クラウドの“クライアント”について考えていますか? 昨今「クラウド・コンピューティング」(以下、クラウド)に対する関心が高まっています。「アプリケーション開発のさまざまな面でパラダイムシフトが起こる」といわれており、次第に多くの技術者に理解されるようになりました。その半面、実用について考えると、まだ若い技術であるということもあって特に“業務”アプリケーションへの適用は非常に限定的なものになっています。 そしてクラウドに関しての言及は、インフラからデータベース、分散並列処理、クラウド上にデプロイするサーバア
kazuhoさんがやってくれました。 ずいぶん前からjsonをC++でパース(SAXじゃなくてDOM)するのに小さいライブラリないかなーと思ってました。個人的にはjson-cというのを使ってたのですが、幾らか気に入らない所があったりビルドが少し手間だったりしていました。STLしか使わなくてvectorとかmapで表現されるツリー構造な物が欲しいなぁって思ってたんです。 とあるIRCで昨日、kazuhoさんと「ほしいですよねー」という話から始まって、githubにあるjsonxxとかも物色しながら「いいのないねー」とか言ってたらkazuhoさんが「もすこし綺麗に書けそう」って言い出して朝から本格的に書き始めてついさっき出来上がりました。速いw 名前はpicojson とても小さく、実装コードだと300数十ステップ程です。しかもヘッダファイルだけなので管理が楽です。 試しにwassrのpubl
バッドノウハウ通信(全6回)の最終回がgihyo.jpで公開されて完結! 2009-06-15-2 [Book] WEB+DB PRESS 連載されていた高林哲氏によるエッセイ「BK通信 -Bad Knowhow Tsushin-」の最終回が gihyo.jp で公開されました。 これを記念して全六回をリストアップ。 - #01 JavaScriptのバッドノウハウ http://gihyo.jp/dev/serial/01/bk/0001 - #02 数字のバッドノウハウ http://gihyo.jp/dev/serial/01/bk/0002 - #03 C++のバッドノウハウ http://gihyo.jp/dev/serial/01/bk/0003 - #04 ブラウザのバッドノウハウ <form>編 http://gihyo.jp/dev/serial/01/bk/0004 -
マンデルブロー集合の計算をJavaScriptと比較すると、Native Clientの速さがわかる(ブラウザにはFirefox 3を使用) Googleは、Webブラウザ上でx86ネイティブコードを実行する処理系「Native Client」の計画をアップデートした。従来の実験的な位置付けから前進し、今後はデベロップメントプラットフォームとして次段階の開発が進められる。 Native Clientは、CPUネイティブコード(マシン語)をWebブラウザ上で実行する処理系。ライブラリ群からなるランタイムと、各種Webブラウザに対応するプラグイン、およびGCCベースのコンパイラツールで構成される。サポートされるOSはWindowsとMac OS X、およびLinux。現在のところ、CPUアーキテクチャはx86系のみ対応するが、将来的にはARMやPowerPCへの移植も検討されている。 Goog
JavaScript InfoVis Toolkit - Interactive Data Visualizations for the Web JavaScriptで複雑なデータ視覚化のためのライブラリ「JavaScript InfoVis Toolkit」 次のような、画像編集ツールで書くにしても大変そうな複雑なデータの描画をJavaScriptで行えます。 描画できるグラフもなかなかユニークなものが多くて、これは覚えておくといつか使えるかもしれません。 APIドキュメントはこちら 関連エントリ 複雑なデータも綺麗に描画できるデータのビジュアライズフレームワーク「Axiis」 データを視覚的に分かりやすくビジュアライズするためのライブラリ集
話題としては、まぁ、何かどこにでも転がってる感じなのだろうけど、 余りに簡単に出来たので、自分用にメモ書き。 function emit(template,map) { return template.replace(/\$\{[^\$\{\}]*\}/g,function(key) { var v = map[key.substring(2,key.length-1)]; return v ? v : ''; }); } 使い方はこんな感じ。 ${パラメータ名}がプレースフォルダになっていて、 そのパラメータ名で、二番目の引数のmapから値を取り出して置換する。 var tmplt = "<div>hoge ${hoge} ${fuga}</div>"; var newone = emit(tmplt,parseParams()); console.log(newone); f
Sexy Drop Down Menu w/ jQuery & CSS | Noupe セクシーなドロップダウンメニュー実装サンプル。 次のような、セクシーかどうかはさておき、クールなメニューのサンプルが公開されています。 CSSで綺麗にレイアウトして、jQueryで実装したものです。 マウスオーバーで光る高級感がナイス 矢印↓ボタンを押した時にちゃんと凹むのもいい感じ。 タグ構造も結構綺麗に定義できてレガシーなブラウザ(IE6)にも対応しているっぽいのでなかなかオススメです。 関連エントリ チュートリアルでここまでやる?というプロレベルのWEBレイアウト作成チュートリアル jQueryクライアントとPHPサーバ間をJSONで結ぶチュートリアル
タイトルは釣りですが、実際にグリモンの開発効率が気持ち悪いくらいに上がりました 2009/06/02追記 動画upしました 初めてなのでいろいろ適当ですが、ご容赦を これは何? vimの環境設定の勉強がてら、greasemonkeyの開発環境を作ってみました 環境は、Ubuntu8.0.4です できることは以下の通り コード補完 スニペットに対応 user.jsで新規ファイルを作ると、テンプレートを自動に作ってくれる コマンド一発で、firefoxにグリモンをインストール 保存時に自動的にfirefoxの今開いてるページを再読み込み まずは、vimrcと入れたプラグイン .vimrc 上記の設定とかをまとめた.vimrcは以下の通りです set encoding=utf-8 set nu syntax on "新しい行のインデントを現在行と同じにする set autoindent "インク
タイトル変えました。旧タイトル「JavaScriptでよく使う書き方」。よく使うけど毎回忘れる。 正規表現にマッチするかどうか。 RegExp#testを使う。 /abc/.test("abcdefg") // => true String#searchはマッチした位置を返す。マッチしない場合は-1。先頭にマッチすると0でfalseなので注意。真偽値が欲しい場合はString#searchを使わない。 "abcdefg".search(/xxx/) // => -1 "abcdefg".search(/def/) // => 3 "abcdefg".search(/abc/) == false // => true 正規表現の部分マッチを得る。 部分マッチを得るには、RegExp#execかString#matchを使う。execとmatchの速度は大して変わらない。 正規表現のベンチマー
自分はスーパーJavaScripterでこんなすげーのが5行で書けちゃう。やばいだろ!とかいうのでは全然無いですが、オブジェクト指向っぽい話が最近分かってきたつもりで、それでやっときゃ問題無いってことを思い始めているので、なんかそんな話を書いていきます。 こんな短く書くテクニックがあるぜ! var hoge = hage ? huga : hoga; とか書けちゃうんだぜ!とかより、長くていいから分かりやすく拡張しやすいようにするにはどうするのかとか、そういう話ができればなーと思います。内容的には全くもって新しくも何とも無いですが。jQuery使ってやる前提です。 まんじゅう製造スクリプト 今日はまんじゅうを5個作ります。なんと、まんじゅうは、クリックすると隠れます。 まんじゅうサンプル var Manju = function(){ this.elem; this.hidden = fa
はめじに いま どかうく .rog で けっりぶんじ かすんう が はいてっやる ので さそっく じぷりくすばゃと で じうっそ しみてた String.prototype.cmabrigde = function() { return this.split(' ').map(function(w) { var ws = w.split(''); var l = ws.pop(); return (ws.shift() || '') + (ws.length ? ws.sort(Math.random).join('') : '') + l; }).join(' '); }; さこんう URL http://ja.doukaku.org/249/ C++ だと こなんかんじ? #include <iostream> #include <string> #include <algorithm
僕はコードスタイルが一定しないのですが、最近はクロージャ!クロージャ! 最近は Firefox拡張/Greasemonkey/userChrome.js 系の javascript しか書いてないんだけど、そのあたりで「オブジェクトの継承」とかしたいと思うことがなく、 prototype とかややこしいだけなので全然使わなくなりました。 昔 function myClass(){ this.init.apply(this,arguments); } myClass.prototype.init=function(name){ this.name=name; } myClass.prototype.hoge=function(){ return "hoge" } myClass.prototype.huga=function(){ return this.name+this.hoge()+"
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く