エンジニアもどきの雑記

メモ帳です。きっと。macアプリ配信windowsでもできるようになるまで絶対にメイン機にしないマン。特筆しない限り環境は【win10home,i5-7200u,8g,64bit,巨乳が好き】

いい加減Web front技術は落ち着くべし

仕事でさ。 フロントというかフロントエンド触ることが多いの、 ウェブ系だから。

で、今だしES6(ES2015)とかもバンバン触る。ie対応しなくていいだけ天国だけど。

思った。

hogelist.forEach((data) => {
    //dataに対して何かする
});

このラムダ式もどきのforEach。 あのforeachです。

なんでbreakないんだよ!

これ、途中に

hogelist = [ 'aaa', 'bbb', 'ccc', 'ddd' ];
hogelist.forEach((data) => {
    if (data === 'bbb') {
        return;
    }
});

ってやってもでれねーの。いや、マジで。 他の言語使いなら驚くでしょこれ。

これに一瞬ひっかかって、なんで? と調べてみたところ、 どうやら同じことを考える人はたくさんいるようで答えはすぐに見つかった。

このforEach。 意地でもdataをすべて回すようです。 意地っ張りです。

そのため、途中で条件に達したら抜けようっていうphpでいう

foreach($hoge as $val) {
    if ($val == "aaa") {
        //抜けるッ!!
    }
}

ができねーの。なんでって意地っ張りだから。

他の手段としてhogelist.someなんてのがあるらしいが、

それで納得がいかないからわざわざ記事にしてるんだよ!

なんだよ! あれやこれやと何でもかんでもjsでやろうとあほみたいにツール作りまくってるくせに! なんでこれができないんだよ! 前にフェイスブックかどこかにも書いたけど引数の初期値も設定できなかっただろ! 素のjsだったかもしれないけど!

function hoge (foo = 1) {
    //なんでだよ!
}

うぉおおおああああああああ ほんとにフロント書きたくないでござる!書きたくないでござる! アルゴリズムとかじゃなく、書き方とできることで引っかかるでござる!

しかも今nodeとsocketでフロントなのにサーバーサイド! フトントなのにサーバーサイド! フロントのバックエンド!

もう歴史も長いんだし、そろそろ完璧なツールや言語が出てきてもいい気がする。