Array::mapのコールバック関数の引数

私はいつも以下のようにJavaScriptのArray::mapに指定するcallback関数では第1引数しか利用していない。

[0,1,2].map(function(value) {
    return value + 1;
})
//[1, 2, 3]


MDNの実装サンプルを見て他の引数の存在を知った。
callback(<配列の要素>, <要素のインデックス>, <配列>)になっている。

[0,1,2].map(function(value, index, arr) {
    console.log(value);
    console.log(index);
    console.log(arr);
})
//1
//0
//[1, 2, 3]
//2
//1
//[1, 2, 3]
//3
//2
//[1, 2, 3]