Made by Magnus Wolffelt and contributors Version 1.6.5 Source code on GitHub Run tests
Made by Magnus Wolffelt and contributors Version 1.6.5 Source code on GitHub Run tests
移転しました http://please-sleep.cou929.nu/20110721.html
前回の「ブログの☆の総数を取得できるAPIを組み込みました」では、はじめてJSONPを使ってみました。以下、実際にJSONPを使ってみての覚え書きと、これからJSONPプログラミングをはじめる方へのTIPSです。 ブログの☆の総数を取得できるAPIは、はてなスターに登録されたブログの情報を取得できるJSON形式とJSONP形式で提供されているAPIでした。 はてなスター日記 - ブログの☆の総数を取得できるAPIを追加しました JSONとは、JavaScriptにおけるオブジェクトの表記法をほぼそのまま利用したデータフォーマットのことで、JSONPはJSONにちょっと記述を加えて、クロスドメインのJSONデータを非同期で読み込ませて処理するための手法のことです。(詳しい定義については、自分で調べてみてください) 通常、Webブラウザでは他ドメインのJavaScriptのデータを読み込んで実
他のライブラリや、自分のコードと共存させるときは、これらの名前と衝突しないように気をつける必要があります。同じ名前を使ってしまうと、コードがロードされた順番によって挙動が変わる、というようなわかりにくい問題が発生してしまう場合が出てきます。 オブジェクト、クラスの使われ方 ライブラリ内では、上記の名前空間は大きく分けて以下のような使われ形をしています。 その下に別のオブジェクトを入れるための親名前空間として使う Class.create()を使って Prototypeライブラリ風のクラスとして定義する Object.extend()を使って他のクラス、オブジェクトから継承されることを前提とする関数を集める コードを簡潔に記述する為に短い名前の関数として使う 特に、Object.extend()を使って継承を実現している箇所が多く、最終的にどのオブジェクト・クラスにどのメソッドが定義されてい
UStream.tvとtwitterでニコニコ動画ってみた、あとJavaScript→ActionScriptブリッジの更新 追記:デモページTwitterとUstream.tv のアカウントは切り替えれるようにした。 このエントリの続き JavaScript → ActionScript なオブジェクトブリッジを作ってみた 最近もっぱらActionScript勉強中なのですが、JavaScriptオブジェクトをActionScriptから叩けると楽しいのじゃないか、と思ってオブジェクトブリッジ作成中な訳です。で実際何が便利かと考えたら、まあJSONPかなぁと。やっぱActionScriptでもJSONPでクロスドメインのデータとってきたいじゃない、人間だもの。 で一つサンプルを作ろうと思ってネタ探ししてたら、なんかustream.tvってのが面白そうじゃないか。ustream.tv一言で
9割ぐらいはハッシュ何がハッシュなのかjavascriptで存在するほとんどのオブジェクトの実体はハッシュだよ。 var arr = [0,1,2,3]; とかをみると配列(人によってはリスト)に見えると思う。でも実際は違うんだ。 これは var has = {0:0,1:1,2:2,3:3}; と基本的には等価なんだ。ただちょっと束縛されているメソッド(インターフェイス)が違うだけ。 ためしに arr[4] = 4; arr['x'] = 'string'; arr[-1] = -1; としてみよう。 Firebugで確認してみると[0, 1, 2, undefined, 4]というような値がかえってくるよ。 でもarr[-1]やarr['x']の値は保存されてないのかな?そんなことはないちゃんとアクセスできるんだ。 それどころかarr.xで'string'がかえってくるんだ。 別の例を
JavaScriptオブジェクトの、お使いのブラウザの値を表示してみてください: navigator. 先頭に戻る 3. SafariはDHTMLをサポートしていますか? Safariは、JavaScriptを介してページ上のほとんどの要素にアクセスできる、W3C DOM-2を通じてDHTMLをサポートしています。詳細については、アップルインターネットデベロッパ向けの、DOM-2の使用に関する2つのパートからなる記事、Part IおよびPart IIを参照してください。 DHTMLがサポートされているかをスクリプトを使用してテストする場合は、document.getElementByIdメソッドをチェックします。Mozilla、Internet Explorer 5+、その他最新の各種ブラウザもこれをサポートしています。 if (document.getElementById)
Google Gearsのワーカプールとは Webアプリケーションをオフラインでも使用可能にする「Google Gears」。発表から一週間以上が経過し、Gearsを使用したWebアプリケーションもすでに登場してきている。Webアプリケーション開発者にとって「無視することができない技術」だと言えるだろう。本誌でもそうした方々のお役に立てるよう、これまで二度に渡ってGoogle Gearsを用いたプログラミング方法をご紹介してきた。 Google Gearsに含まれる機能は、大きく「ローカルサーバ」「データベース」「ワーカプール」の3つに分けられる。 ローカルサーバは、Webページに関わるリソース(HTMLファイル、JavaScriptファイル、画像ファイル、スタイルシート…など)をクライアントマシンにキャッシュしておく技術だ。ネットワークに接続していない環境でもページを表示することができ、
スクリプト言語の比較 *1 *2 *3 *4 *5 *6 *7 コメント 行の継続 定数 未代入の変数へのアクセス 変数の展開 入出力 出力 フォーマット出力 出力先変更 標準入力 __END__ 演算 +1 整数/整数 負数の除算 文字列 真と偽 多重代入 多岐分岐 関数 関数 関数引き数 関数引数に対する副作用 関数のデフォルト引数の値の評価タイミング 関数のデフォルト引数にコンテナ型を使用した場合の振舞 関数戻り値 関数の再帰 関数の別名 関数定義内関数定義 関数の引数の順番 関数にファイルハンドルを渡す オブジェクト指向 クラスの定義 インスタンスメソッドの定義 メソッドのクラス内での利用 インスタンスメソッドの可視性 インスタンスメソッドの追加 インスタンス変数 インスタンス変数の可視性 インスタンス変数の追加 クラス変数 クラスの継承 多重継承 スーパクラスのメソッド呼び出し
Copyright (C) Mainichi Communications Inc. All rights reserved. 掲載記事の無断転載を禁じます
ソース読みの準備 本連載ではこれまで、JavaScriptの特徴的な記法をいくつか紹介してきた。そろそろ世に広まっているJavaScriptライブラリのソースコードを読み解いていくことができるはずだ。 今回からは、少し趣向を変えて、JavaScriptライブラリをいくつか挙げながら、ライブラリ利用方法と、その動作メカニズムについて紹介していこう。 今回は、prototype.jsにフォーカスする。現在のJavaScript人気の立役者といっても過言ではないprototype.jsだが、その中身はどうなっているのだろうか。ソースコードを読みながら、メカニズムはもちろん、JavaScript的なコードスタイルも学んでいきたい。 まずはソースコードを読むための環境を整備しよう。prototype.jsは、作者であるSam Stephenson氏が提供するサイトから取得できる。現在の安定最新バージ
TOP› WEBの小技色々› 膨大なAjax,Javascriptをコピペで使えるサイトだけど英語。だったら英語サイトを70%くらい使えるようになるYamada式翻訳でいきましょう。
Google AJAX Feed APIとは? Googleは16日、「Google AJAX Feed API」を公開した。Google AJAX Feed APIは、RSS/Atomなどの各種フィードを取得するためのJavaScript APIだ。 これまで、JavaScriptでフィードを取得し、取り扱うには以下のような問題があった。 JavaScriptはセキュリティ制限上、生成元のホストにしかXMLHttpRequestなどを使用したネットワークアクセスを行うことができない(これを同一生成元ポリシーと呼ぶ)。そのため、単純に他のホストからフィードを取得するようなコードを書くことができず、自ホストのサーバにプロキシを置いておき、そのプロキシ経由でフィードを取得するなどの対処が必要であった フィードの形式が乱立している。これで困るのはJavaScriptに限った話ではないが、ことサイ
皆さんは、「Ext」というJavaScriptフレームワークをご存知だろうか。Extは、4月1日にバージョン1.0がリリースされたばかりの新鋭のフレームワークである。 Extの前身は、「Yahoo! UI Library(YUI)」の拡張版として開発された「yui-ext」というライブラリである。しかし、yui-extでは、リッチなUIを実現できるものの、決してサイズが小さいとは言えないYUIを導入する必要がある。そこで、yui-extの作者であるJack Slocum氏は、YUI以外のライブラリとも併せて使えるようにyui-extを刷新。その成果物をExtという名前で(頭文字の「yui」を外して)リリースした。 Ext 1.0で対応している外部のフレームワークはPrototype.js(scriptaculousも併せて利用可)、jQuery、そしてYUIである。現在のところExt単体で
EfficientJavaScript - Dev.Opera - 効率的な JavaScript 目次 この文書について 効率的な JavaScript ECMAScript eval や Function のコンストラクタを使うのはやめよう eval を書き換えよう 関数を使いたいなら function を使おう with を使うのはやめよう 性能を決める関数で try-catch-finally を使うのはやめよう eval と with は隔離しよう グローバル変数を使うのはやめよう 暗黙のオブジェクト変換に気をつけよう 性能を決める関数で for-in を使うのはやめよう 文字列は累積スタイルで使おう プリミティブの操作は関数呼び出しより速い setTimeout() や setInterval() には文字列でなく関数を渡そう DOM 再描画と再フロー 再フローの回数をでき
同じ事をやるにも、いろんな書き方があるわけでいかにして短くてわかりやすいコードを書くかというノウハウを紹介します。 例として"abcde"を80回繰り返した文字列を作るとして実際に自分のコーディングスタイルがどんな風に変化していったのか、という。 短くなるのは確かなんだけどわかりやすいかというと、人によるかもしれない。 グローバル関数を定義2年前なら、多分こういう具合だった。 //ふつうに関数として定義する function x(str,num){ var tmp = ""; for(var i=0;i<num;i++){ tmp += str; } return tmp; } x("abcde",80) Stringのメソッドとして定義1年前だとこんな感じ。 //Stringのメソッドとして定義する String.prototype.x = function(num){ var tmp
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く