map方法学習、パッケージ関数--Aray.prototype.map()の機能を実現します.

2423 ワード

パッケージ関数–Aray.prototype.map()を実現する機能
Aray.prototype.map()この方法は非常に使用価値があり、次のループのステップを省き、配列中の各要素を処理しながら新しい配列を返します.同様の機能を実現するために閉塞パッケージを使用した方法を示した.
Aray.prototype.map()方法
  • まずアラy.prototype.map()の方法を見てください.
  • map()方法は、行列内の各要素が提供される関数を呼び出す新しい配列を作成する.
  • map方法は、元の配列の各要素に順番にコールバック関数を呼び出します.calbackは、各実行後の戻り値(undefinedを含む)を組み合わせて新しい配列を形成します.
  •     //map  
        var data = [10, 20, 30, 40];
        var roots = data.map(function (ele) {
            return ele / 10;
        });
        console.log(roots);//[1,2,3,4]
        console.log(data);//[10, 20, 30, 40]
    パッケージ関数でAray.prototype.mapを実現する方法
    以下はmap法を実現する関数パッケージです.しばらくは基礎機能を実現しただけです.具体的にはたくさんの最適化ができます.
       function myMap(data, fn) {
            var arg = [];
            for (var i = 0; i < data.length; i++) {
                (function (ele, fn) {
                //             
                    arg.push(fn(ele));
                })(data[i], fn);
            }
            return arg;
        }
        var data = [10, 20, 30, 40];
        var roots= myMap(data, function (ele) {
            return ele / 10;
        });
        console.log(roots);//[1,2,3,4]