[javascript] call と apply のサンプル

JavaScript の関数オブジェクトについている不思議なメソッド、call と apply についての記事です。これを使うと使いたいメソッドを実行時に文字列で指定するような感じの動的メソッド呼び出しが実現できます。

call, apply の第一引数は、呼ばれた先でのthisを指定します。

callとapplyの違いは、引数の与え方です。例: fn.call(context, arg1, arg2, ...); fn.apply(context, [arg1, arg2, ...])

var list = [];
list.push("hoge0");
list["push"].call(list, "hoge1");

var m = "push";
list[m].apply(list, ["hoge2"]);

console.log(list); // output: ["hoge0", "hoge1", "hoge2"]

コメント

このブログの人気の投稿

[linux] ping は通るのに No route to host と言われる

Chrome でダウンロードしたファイル名の一部がハイフンになる

ISUCON12 予選突破しました #isucon