apply メソッド : Function オブジェクト
Function.apply の第1引数を this として、Function を呼び出す。第2引数以降は、 Function への第1引数、第2引数、... となるが、値は Array として渡す。
下の例では、sayHello を call しているが、第1引数として渡した p (Person オブジェクト) が、 sayHello ファンクションの中での this になる。
function Person( name ) {
this.name = name;
}
function sayHello( s ) {
alert( s + this.name + '!' );
}
function ___test() {
var p = new Person('Ichiro');
sayHello.apply ( p, new Array('Hello, ') ); // 'Hello, Ichiro!' が表示される
}
オブジェクト | Array | Boolean | Date | Error | Function | Global | Math | Number | Object | RegExp | String |
定番の JavaScript 本
初心者から上級者まで、誰にでもおすすめの3冊はこちら!
JavaScript 第5版 (レベル: 初級~上級) | |
---|---|
仕事で JavaScript を書く人は必ず手元においておくべき本です。 JavaScript のトピックをほぼ全て網羅しています。何かわからないことがあってこの書籍にあたって、この書籍に出ていないトピックはブラウザ固有の問題と疑ってみて、まず間違いありません。
幅広いトピックを正確かつ簡潔にまとめています。例えば正規表現を学ぶときはこの書籍で正規表現の節をしっかり読めば、より進んだ書籍に取り掛かることが出来るでしょう。 JavaScript 本で1番のお薦めです。 |
JavaScript: The Good Parts ―「良いパーツ」によるベストプラクティス (レベル: 中級~上級) | |
---|---|
こちらはかの JSON の生みの親、Douglas Crockford 氏による JavaScript の「良いとこ取り」の解説、ベストプラクティス及びワーストプラクティス(?)です。 「目からウロコ」とは、まさにこのこと。 私もこれまで頑張って勉強してきたつもりでしたが、著者がいうように JavaScript はひどい情報が多く、最も誤解されている言語だ、とのこと。 残念ながら、私も良い情報源で学んでいなかったのですね。 「"uninformed programmers" がやりそうなこと」ということを、私もやっていました... なぜ著者がそう言うのか、それがこの薄い本に凝縮されています。私は完全に納得しました。 (「JavaScript は function スコープのみ」「クロージャによるプライベート変数の実装」などは、 恥ずかしながら本書を読むまで理解していませんでした) この本と JavaScript 第5版 の2冊だけを頼りに勉強すべきです。(こちらはダグラス氏も推薦しています) ちなみに、私は原著 (洋書) で読みました。 日本語の書籍ではどのように直されているかわかりませんが、 First Edition の印刷 (2008年5月) で読んだので、単純な記述間違いが多かったです。 洋書で読む方は US オライリーのサイトに正誤表がありますので、そちらも確認してください。
原著はこちらです↓ |
ハイパフォーマンスWebサイト ―高速サイトを実現する14のルール (レベル: 中級~上級) | |
---|---|
最高のウェブサイトを作るための方法が、14のルールに簡潔に整理されています。 米 Yahoo! が提供している Firefox のプラグイン YSlow の結果を理解するためには、ウェブサイトの情報もありますが、 この本が最高です。 難点は、HTTP プロトコルを理解していないと、説明が簡潔なためわかりにくいかもしれません。(HTTP を理解している人には十分なレベルですが) その場合は HTTP の入門書も併せて参照するとよいでしょう。 |