思いは言葉に。 はてなブログは、あなたの思いや考えを残したり、 さまざまな人が綴った多様な価値観に触れたりできる場所です。

思いは言葉に。 はてなブログは、あなたの思いや考えを残したり、 さまざまな人が綴った多様な価値観に触れたりできる場所です。
前回までのおさらいと今回のあらすじ これまで二回にわたって、「JavaScriptでオブジェクト指向を行うには」というトピックについてお話ししてきました。 前々回は、「コンストラクタ=関数」であるという事実を紹介し、独自のクラスを作成する方法についてお話ししました。 前回は、JavaScriptによるオブジェクト指向の中核とも言える「プロトタイプ」と言う仕組みについて紹介しました(プロトタイプについてのお話はまだ終わりではありません。次回、さらに進んだ「プロトタイプチェイン」と言うテクニックについてお話します)。 ここまでの説明で、JavaScriptでオブジェクト指向を行うための基本的な知識はほとんど押さえたことになります。そこで今回は、これまで学んだことをしっかり身につけるためにも「JavaScriptでクラスを作るには」という点をしっかりおさらいしておきたいと思います。その過程で、今
Mozilla Foundation, JavaScript Evangelist, John Resig氏は2月29日(米国時間)、自身のブログにおいてBad Object DetectionのタイトルのもとクロスブラウザのJavaScriptコードを記述する際の注意事項をまとめている。同氏はJavaScript Ajax WebアプリケーションフレームワークjQueryの主要開発者であり、このあたりの事情に精通している。 オブジェクト検出の記述例 同氏はクロスブラウザのJavaScriptコードを記述するには、使いたい機能ごとに使えるかどうかを検出する方法が一般的なやり方だと説明。オブジェクト検出の方法はケースバイケースで違うとし、いくつかの例を紹介している。特定のプロパティが存在するかどうかで機能の有無を判断する方法が紹介されている。 ただしこうした方法は、未知のブラウザに対しての動
経緯 id:kazuhooku さんが一年前にやってたことですが Kazuho@Cybozu Labs: JavaScript/1.7 で協調的マルチスレッド 今日やっと挙動が理解できたのと、 Weave のソースを読んでいたらこのテクニックをバリバリ使っていて「ちょwwおまwww」ってなったので、自分でも作ってみようと思いました。 ほとんど id:kazuhooku さんのと同じものなので、既出です><本当にありがとうございました>< まず、 yield とは何か yield とは、 JavaScript 1.7 から導入された機能です。 以下に yield の細かい挙動を示しておきます。 function f() { // なんかの処理 yield; // ... (1) // なんかの処理 yield; // ... (2) // なんかの処理 } var g = f(); // こ
2008年02月20日16:00 カテゴリLightweight Languagesアマグラマーのすすめ 私がJavaScriptを初心者用の言語として選んだわけ アマグラマーのすすめが止まっていて一部の読者を絶望させて申し訳ありません。他の本を先に出さないといけないというのがその理由なのだけど、いい機会なので、 2008-02-20 - きしだのはてな デブサミでid:amachangが、初心者がプログラムを勉強するための言語としてJavaScriptがいいと言っていて、ぼくも同じような理由でいいと思って初心者の勉強にJavaScriptを使ってみたことがあるのだけど、実際にやってみるとかなり難しいと思ったので、そのことをまとめておきます。 への返答の形で、なぜ私がJavaScriptを選んだのかをまとめておくことにします。 まず比較的明らかな理由。 インストール不要の開発環境 ブラウザ
あなたにとって重要なトピックや同僚の最新情報を入手しましょう最新の洞察とトレンドに関する最新情報を即座に受け取りましょう。 継続的な学習のために、無料のリソースに手軽にアクセスしましょうミニブック、トランスクリプト付き動画、およびトレーニング教材。 記事を保存して、いつでも読むことができます記事をブックマークして、準備ができたらいつでも読めます。
JavaScript で作って意味があるのかどうか分かりませんが、作ってみました。 応用編 入力したテキストをページ上に書き出し、個々の文字をドラッグ&ドロップ で動かせるようにする ソースを読んでも中身が分からない HTML を作成する パスワードチェックの部屋 (パスワードは「開けごま」ですが、HTML のソースや JavaScript を解析しても、絶対にパスワードが分からない仕組みになっています。) バー ライブラリ編 こんなの JavaScript で作るかよってな代物です。 できてしまったものはしょうがないでしょう。 utf.js (UTF-8 <-> UTF16 変換) base64.js (Base64 encode/decode) md5.js (MD5) des.js (DES 暗号化/復号化) zlib.js (JavaScript による zlib 実装、zlib
JavaScriptが、いま注目を浴びている。 JavaScriptがこれだけの注目を浴びた理由の1つとして、Ajax技術の登場とも相まって、JavaScriptに対する確かな理解の必要性が高まったという事情は否定できない。しかし、それだけでは説明できない急速な注目の理由として、もう1つ、JavaScriptという言語そのものが持つユニークさが開発者の目を引いたという点は看過できないだろう。 もっとも、このユニークさは同時に、多くの開発者が感じているJavaScriptに対する苦手意識と同義でもある。これまでVisual BasicやC#、Javaといった言語でオブジェクト指向構文になじんできた開発者にとって、JavaScriptのオブジェクト指向構文はいかにも奇異なものに映るのだ。ようやくクラスという概念を理解した開発者が、JavaScriptという言語の背後にたびたび見え隠れする「プロ
The Dojo Toolkit: Great experiences...for everyone. Contents: General Quick Reference Naming Conventions Specific Naming Conventions Files Variables Layout Documentation This document follows the basic outline of the Java Programming Conventions Guide, a copy of which may be found at http://geosoft.no/javastyle.html. Widget authors are expected to adhere to this style guide and also to the Dojo Ac
ついに正式リリース! いまこそ知りたい!! Silverlightは次世代のJavaScriptフレームワーク? Microsoft MVP 松原晋啓 2007/9/7 編集部注:具体的なSilverlightアプリケーションの開発の仕方について詳しく知りたい読者は、本稿と併せて連載「.NETを知らない人でも分かるSilverlight入門」や連載「Silverlight 2で.NET技術をカッコよく使おう」もご参照ください。また、最新版のSilverlight 3に関しては、記事「Silverlight 3、ここがすごい!」をご参照ください。 いまこそ知りたい、“Silverlight”って何? Silverlightは、マイクロソフトによって開発されたクロスブラウザ(※1)・クロスプラットフォーム(※2)・高度なメディアエクスペリエンスや RIA(Rich Interactive Ap
2007年08月17日01:15 カテゴリ翻訳/紹介Lightweight Languages 怠翻 - JavaScriptでありがちな9つのシマッタ 私自身結構シマッタしちゃうので。 Nine Javascript Gotchas 尻カンマ注意 以下のコードはFireFoxでは動きますが、Internet Explorer (以下IE)では問題になります。 var theObj = { city : "Boston", state : "MA", } 最後にカンマが入らないよう注意しましょう。 浮気なthisは何を見てるやら 以下のコードで、thisは何を指しているでしょうか。 <input type="button" value="Gotcha!" id="MyButton" > <script> var MyObject = function () { this.alertMess
ZeraWeb development labは2007年3日(米国時間)、新しいデータフォーマットとして「Really Simple Data(RSD)」を提案した。同フォーマットは現在注目されているデータフォーマットの優れた特徴をまとめたようなフォーマット。CSSからクォートなしのシンプルな表記を、YAMLから高い柔軟性を、XMLからメタデータとの親和性の高さを、JSONから文法の学習の容易性を持ってきていると主張されている。 ZeraWebのサイトにおいて提案されているサンプルを次に引用する。CSSとJSONのフォーマットを組み合わせたようなフォーマットになっているようだ。 Example 1: A person object.(ZeraWebからの引用) person { name { last: Yoder, first: Dan } title: Web Application
「Ajax Mistakes」という面白い記事がありました。 AJAXを使ってWebアプリを作る時に陥りがちな間違いを列挙していました。 以下、要約してみました。 かなり削っているので、詳細は原文をご覧下さい。 AJAXを使うためにAJAXを使う AJAXはカッコイイ技術です。 しかし、AJAXはツールでしかありません。 AJAXはオモチャではありません。 実験的にAJAXを使うために、不必要なところにAJAXを無理矢理使っている場合が多いです。 戻るボタンの動作を妨げる 戻るボタンはWebインターフェースで重要な役割を果たしていますが、JavaScriptとの相性は良くありません。 戻るボタンの機能を維持できない場合があることは、JavaScriptのみで構成されているページをお勧めしない理由の一つです。 ただ、使い勝手の良いサイトというものは、そもそも戻るボタンに依存しなくてもユーザが
最近、「これからのウェブ・アプリケーションはAjaxだ」という声を良く聞く。ソフトウェアを生業としているエンジニアとしては、この手の「流行もの(hype)」に触れた時には、表面的なものに踊らされずに、その本質を自分なりにしっかりと捕らえて消化・吸収して自分のものにしなければいけない。今までも、「オブジェクト指向」、「マルチ・ティアー・アーキテクチャー」、などの言葉が一人歩きするたびに、「これからは○○だ」とか「○○の時代は終わった」などと、過激なことを言って読者の目を引こうとだけするマスコミや企業のマーケティング戦略に数多くの人が踊らされてきた。 そんなノイズだらけのメッセージに混乱させられた結果、「Cではオブジェクト指向のプログラミングは出来ない」と信じているエンジニアがいまだに沢山いることは全く嘆かわしいことだ。「オブジェクト指向のプログラミング」は、設計姿勢・プログラミングスタイルに
EfficientJavaScript - Dev.Opera - 効率的な JavaScript 目次 この文書について 効率的な JavaScript ECMAScript eval や Function のコンストラクタを使うのはやめよう eval を書き換えよう 関数を使いたいなら function を使おう with を使うのはやめよう 性能を決める関数で try-catch-finally を使うのはやめよう eval と with は隔離しよう グローバル変数を使うのはやめよう 暗黙のオブジェクト変換に気をつけよう 性能を決める関数で for-in を使うのはやめよう 文字列は累積スタイルで使おう プリミティブの操作は関数呼び出しより速い setTimeout() や setInterval() には文字列でなく関数を渡そう DOM 再描画と再フロー 再フローの回数をでき
Google AJAX Feed APIとは? Googleは16日、「Google AJAX Feed API」を公開した。Google AJAX Feed APIは、RSS/Atomなどの各種フィードを取得するためのJavaScript APIだ。 これまで、JavaScriptでフィードを取得し、取り扱うには以下のような問題があった。 JavaScriptはセキュリティ制限上、生成元のホストにしかXMLHttpRequestなどを使用したネットワークアクセスを行うことができない(これを同一生成元ポリシーと呼ぶ)。そのため、単純に他のホストからフィードを取得するようなコードを書くことができず、自ホストのサーバにプロキシを置いておき、そのプロキシ経由でフィードを取得するなどの対処が必要であった フィードの形式が乱立している。これで困るのはJavaScriptに限った話ではないが、ことサイ
10分で書く構文解析器をやってみました。 再帰下降法を使っています。 四則演算して結果を返します。 最初に、簡単なスタックのように使える文字読み込み関数pop(),push(),peek()をつくり、 その関数を利用して、再帰下降構文解析の関数expr,term,factを作成しています。 字句解析は、pop()とfact()関数内でやってる感じです。 時間が余った分、空白の処理を入れています。 htmlはありものを使ってるので、実質、作ってる時間は5,6分です。 ムービー http://sakurai.s59.xrea.com/10min/10minparse.html できあがったもの http://sakurai.s59.xrea.com/10min/parse.html 詳しいところは、id:tanakhさんの 10分で書ける、お手軽パーザーを見てください。 http://fxp.
あるメニュースクリプトを作成していたのですが、そこで「ユーザが任意で作成するTABLEタグ内のAタグの位置を正確に取得」しなくてはいけない状況になってしまい、しかもクロスブラウザということなので、まぁなんとも「スクリプター泣かせ」な話だなあと思いつつ、半ば諦め状態であったがそれなりに実装できたので紹介しておく。 テスト環境は IE5,NS4,NS6/WIN であるが、兎に角参ったのはIE5である。 ご存知の通り、IE5はTABLEがHTML構造からある意味独立してしまっている。これはスタイルシートで BODY{ font-size:13px; } などとしていてもTABLEのセルには継承されず、恐らく BODY,TH,TD{ font-size:13px; } と書いている人も少なくないと思う。 これが JavaScript にも影響しているのが痛い。つまり、要素の offsetLeft,
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く