concat

JavaScriptでconcatはもう使うべきではないのかもしれない (Kanasansoft Web Lab.)
「JavaScriptでconcatはもう使うべきではないのかも」なんてことはない - os0x.blog
こういう最適化論争はブラウザの実装次第であっさり変わっちゃったりするんだろうなぁ。
内部的なconcatを使いたくないだけなら、複製をArray#sliceで行なう、と決めてしまい、Array.prototype.concatを上書きしちゃえばいいのかな。ライブラリに書いておけば可読性問題はなんとかなるような。
非破壊コードもなんかそれらしい名前でArray.prototypeに入れてしまえ。単純にfunction(b){return this.slice(0).push(b);}とかになるだけだとは思うけど*1。これも可読性の問題か。標準にない名前の関数を適当に作ると「なんだこれは」とゆー話になったりしそう。

*1:もちろんこれだけじゃダメだけど。型チェックとか。