S2ファクトリーは、様々な分野のスペシャリストが集まり、Webサイトやスマートフォンアプリの企画・設計から制作、システム開発、インフラ構築・運用、デザイン・ディレクションなど、様々な業務を行っています。制作・運用に必要なすべての工程をワンストップ・ワンチームで提供します。また、ご要望に応じて、システム開発やフロントエンドエンジニアリング、アートディレクション・デザイン、プロジェクトマネージメントのみのプロジェクト参加も行っています。
![S2ファクトリー | Web/アプリ/システム/デザイン/ディレクション](https://cdn-ak-scissors.b.st-hatena.com/image/square/5a63df10a7fad96d81c35888eeec35eb89630e0a/height=288;version=1;width=512/https%3A%2F%2Fwww.s2factory.co.jp%2Fogp.png)
prototype.js使っていてうれしいことの一つにbindが使えるというのがある。$()とかAjaxのクロスブラウザ対策とかもいいけれど、thisをbindできるのは大きなメリットだと思う。bindがないとどういう時に苦労するかというと、以下のような場面。 var Foo = function(name) { this.name = name; } Foo.prototype.talk = function(message) { alert(this.name + ": " + message); } function inScope() { var foo = new Foo("foo"); setTimeout('foo.talk("Hello World!")', 0); } inScope(); これは実行できない。なぜかというとsetTimeoutに渡しているfooという変数
prototype.jsのAjax.Requestを使って、JSON形式のデータを扱っていましたが、誤った(というかもったいない)使い方していたことに気が付きました。 Ajax.Requestを使ってデータをやり取りする際、下記の条件に当てはまるならば、無駄な処理が行われていると思われます。 Ajax.Requestのオプションで指定するonCompleteやonSuccess関数内で、XMLHttpRequestのresponseTextに対してevalを実施している。 Ajax呼び出し時に、サーバ側から返すContent-Typeに、"text/javascript"が含まれる。 なぜ無駄かというと、Ajax.Request内では処理完了時、レスポンスのContent-typeを判定し、"text/javascript"が含まれる場合、レスポンスの内容に対してevalを実行します。 (
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く