AngularJSとKarmaで艦これブラウザもどきのテストを書いていたところ、どうしてもテストで通らない箇所があった。ある配列からある条件をクリアする要素を抽出するという、非常に単純な処理だったが、メソッドがundefined
になっていて落ちてしまう。この挙動に悩まされて数日経過した挙句にようやく、このメソッドはexperimentalで未実装の場合があるということを知ったのであった。
奴の名はArray.prototype.find
。真偽値を返す関数を与えると、最初に条件をクリアした要素を返すという関数だ。僕はこれが実験的機能であることをさっぱり見落したまま実装にfind
を使ってしまっていたのだ。今思い返してみると、あのメソッドのリファレンスページだけ何故か和訳されていないのに気付いた時点で何かおかしいぞと疑うべきであった。