JavaScript: メソッドをつなげて記述する
メソッドの戻り値がオブジェクトの場合、その戻り値を使ってさらにメソッドを呼び出すことができます。
次のように記述する手法です。
var re = str.split('/').pop();
このようにメソッドをつなげて記述する方法をメソッドチェーン(メソッドカスケード)と言います。
メソッドチェーンはjQueryでよく目にする手法ですが、JavaScriptでも使用できます。
メソッドチェーンの例
次のサンプルプログラムは、カンマ区切りの文字列データから、 先頭と末尾のデータだけを取得するプログラムです。
// カンマ区切りのデータ var str = "a,b,c,d,e"; // 先頭を取得 var reFirst = str.split(',').shift(); console.log(reFirst); // a // 最後を取得 var reLast = str.split(',').pop(); console.log(reLast); // e
split()は引数で指定した文字で文字列を分割して、配列を返すメソッド。
shift()は配列の先頭を削除して、戻り値として削除した要素を返すメソッド。
pop()は配列の最後を削除して、戻り値として削除した要素を返すメソッド。
このように戻り値がオブジェクトの場合は、戻り値を利用して連続してメソッドを実行することが出来ます。