ドットインストール代表のライフハックブログ
2009年06月13日22:00 カテゴリLightweight Languages javascript - にはクラスはない かえってわかりにくくなっている感じをかつてさんざん実感したので。 JavaScriptのオブジェクトについて考察してみた - あと味 JavaScriptにおけるほとんど全てのデータはオブジェクトである オブジェクトの定義にもいろいろありますが、ここでは「メソッドを持つ」という狭い意味においても事実だということです。実際に見てみましょう。 p(true.toString()); p("String".toString()); p((1).toString()); p((3.14159265).toString()); p([0,1,2,3].toString()); p({q:"answer to life, the universe, and everythi
ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog JavaScript と言うと普段自信をもって膨大なプログラムと格闘している諸氏もコード断片のはり付けに終始してしまうことも多いのではないでしょうか。かくいう私も検索エンジン(を使ってコードを書く)プログラマになっていることが多々あります。 JavaScript にあるこのプログラムの自作を妨げるのは、ブラウザごとに仕様が違ったりとか、正しいはずのコードが動作しなかったりと、プログラミング言語としての特殊性が挙げられると思います。特に目的実現の為に必要となる発想は他の言語と一線を画します。 今回は、 題材は、これです。 誰でも一度は使ったことがあるだろう灰色の説明文付きの入力欄ですね。 簡単な例 さて、作ってみましょう、ということ
Google APIs Explorer Stay organized with collections Save and categorize content based on your preferences. The Google APIs Explorer is a tool available on most REST API reference documentation pages that lets you try Google API methods without writing code. The APIs Explorer acts on real data, so use caution when trying methods that create, modify, or delete data. For more details, read the APIs
画像がダイナミックに切り替わり、マウスオーバーに合わせてナビゲーションバーが変化する――そんな“動きのあるサイト”を作るのに、あなたなら今、何を使うだろうか? 4~5年前ならほぼ間違いなく「Flashで決まり!」だったかもしれないが、2005年以降、Ajax/JavaScriptを使うサイトが増えている。最近では手軽に実装できるライブラリの充実とともに、ますますその傾向にあるようだ。 9月9日にリニューアルされたソニーグループのコーポレートサイト(www.sony.co.jp)もその一つ。旧サイトに比べてトップページのレイアウト領域が広くなり、文字も大きく、スッキリとしたナビゲーションバー……と、注目したいところはいろいろあるが、最初に目を奪われるのは中央にある大きなメインビジュアル部分のはずだ。実はここにJavaScriptが使われている。
シドニー発--当地で開催のMicrosoft主催のTech.Edカンファレンスで講演した専門家たちの見解によると、Microsoftの次世代ウェブ技術である「Silverlight」最大のライバルは、Adobe Systemsの「Flash」ではなく、「JavaScript」だという。 MicrosoftのシニアプログラムマネージャーであるScott Hanselman氏は現地時間9月5日、カンファレンスに集まった聴衆を前に「今後、JavaScriptの処理速度は向こう18カ月間に100〜1000倍向上し、GoogleやMozillaの人々がわれわれをせっついてくるだろう」と述べている。Googleは2日に、より高速なJavaScript技術を搭載したブラウザ「Google Chrome」をリリースしている。 コンサルティング会社Cap Geminiのシニアコンサルタント、Jonas Fo
AS3Wrapper AS3Wrapper imports Flash libraries into Javascript. JavaScriptからActionScript3を使うための「AS3Wrapper」 AS3Wrapperを使えば、JavaScriptの中でFlashオブジェクトを生成して、Flashをそのまま扱えるようです。 with(playerInstance) with(flash.display) with(flash.net){ var image = new Loader(); image.load(new URLRequest(url)); addChild(image); } AS3Wrapperを使ってできるサンプルリストは以下 Drawing a scene Loading an image A text-effect with scalable font
Tuesday, April 8, 2008 224 comments Super Mario in 14kB Javascript Labels: games, javascript Here's an experiment in keeping things small and confined to one Javascript file. There are no external image files or anything, everything is rendered with Javascript using either canvas elements or old fashioned div-making tactics (for IE). The sprites are stored in custom encoded strings in a format tha
※ 画像は公式サイトデモより このソフトウェアはすごい。やりたいことも、できていることも分かるのだが、どうやっているのかがさっぱり分からない。GUIアプリケーションとWebアプリケーションでは越えられない壁が存在すると思っていた。いくらAjaxやJavaScriptを駆使しても、GUIアプリケーションの操作性にはかなわない。 ギャラリーアプリケーション だが、それさえも軽々と乗り越えてしまいそうなアプリケーションが登場した。 今回紹介するオープンソース・ソフトウェアはJsc、C#やVisual BasicのコードをJavaScriptにするソフトウェアだ。Sourceforge.net上でのライセンスはPublic Domainとなっているが、ダウンロードできるパッケージに含まれるlicense.txtには個人利用に限るフリーウェアとなっているので注意されたい。 実際、そのようなことができ
経緯 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(); // こ
Kanasan.JS JavaScript 第 5 版読書会 #1 にて delete 演算子の動作が話題に上ったそうです。そこで、それについてちょっとまとめてみようかと思い立ったはいいものの、ずるずると引き伸ばしているうちに年を越してしました。しかし、読書会 #2 の開催も決まり、もうこれ以上引き伸ばしているといつまでたっても書けなさそうなので、いい加減腹をくくって個人的にまとめてみようと思います。 JavaScript の変数 delete 演算子の対象 変数に対する delete 演算子 削除できるプロパティとできないプロパティ 変数の属性 delete 演算子の返り値 JavaScript の変数 delete 演算子の話に移る前に、変数とは何なのかおさらいしておきましょう。JavaScript において、変数とはプロパティの別名です。といっても、すべてのプロパティを変数というわけ
Ajaxは近ごろ人気を集めているが、その人気は伊達ではない。Ajaxを使うことで、より迅速に、より効率良く、より動的なアプリケーションを開発することができるのだ。しかし、Ajaxには固有の落とし穴もあるのだ。 こういった落とし穴は一見したところ、単なる常識を使うことで避けられるように思える。そして、この見方はある意味において正しい。しかし、Ajaxアプリケーションはその先祖にあたるDHTMLとはアーキテクチャが大きく異なっているのだ。あなたがアプリケーション開発作業においてどれ程の常識を発揮しようと、先人たちの犯した過ちから学んでおく方が良いことに変わりはない。そこで、こういった過ちを7つの大罪と呼ぶことにする。ただし、過ちは決してこれらだけに留まらない。 事実、こういった7つの大罪のいずれかを犯す前により小さな過ちを犯す可能性が高い。このため、まずはこのような小罪を7つ見てみることにしよ
Javascriptでオブジェクト指向なコードを書くには、prototypeベースな言語ゆえ、他のOO言語と異なり多少の小細工が必要になります。やり方は幾つもあるようですが、自分であれこれ試してみたうえでのまとめをここで共有してみます。 OOPと言っても、あくまで個人的に最低限必要だと思うこれら機能の実現を目的にしています: 子クラスのコンストラクタにて、親のコンストラクタを実行 他のOO言語では空気を吸うがごとく実装されている機能 メソッドの継承 Child.prototype = new Parent() なんて親インスタンスを作る事無くなんとかする これらをいかに少ない手間で実現できるか。hacker諸氏ならばちょろっと頭使えばできるのでしょうが、自分はウダウダ時間かけて悩んでしまいました orz。以下3通りの解決策です。 目次 専用のextend関数を使う 使い方 サンプルおよびテ
Ajaxの登場は、JavaScriptと言う言語にとって凄まじい変革をもたらしました。 それまでは、Webページに多少の動きを持たせて利便性を向上する、といった程度でしか認知されていなかったJavaScriptですが、今やそうではありません。次のような理由から、ブラウザ上で動作するリッチクライアントを作成するための、最も一般的な言語として捉えられています。 主要なブラウザのほぼ全てが標準でサポートし、しかも最初から有効になっている 厳しいセキュリティの下で動作するため、ユーザにとって安全 簡潔で柔軟な言語仕様により、短いコードで多くを実現できるうえ、可読性も高い フレームワークの整備による生産性の劇的な向上 非常に長い歴史を持つ技術であり、開発者の人口が非常に多い しかし、近年におけるJavaScriptの変化は目覚ましいものがあります。筆者自身のJavaScriptコードを見ても、この数
function backgroundLoad ( ids ) { for ( var i=0; i < ids.length; i++ ) { var a = getArticleWithCache(ids[i]); backgroundLoad(a.children); } } このbackgroundLoadはIDの配列を引数に取り、その各IDに対して上で定義したgetArticleWithCacheを呼び出します。これでIDに対応する記事のデータがキャッシュされます。そして読み込んだ記事の子記事のIDに対してbackgroundLoadを再帰的に呼び出すことで、ツリー全体をキャッシュすることができます。 ここまですべてうまくいっているように見えます。しかし、一度でもAjax開発を経験したことのある方ならば、これではうまくいかないということはすでにおわかりだと思います。これまでの例で
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く