JavaScriptの楽しい(?)ところの解説

iluvjavascript

Qiitaに「JavaScriptの楽しい(?)ところ」という記事を投稿したので、その内容をちょっとだけ解説してみます。
JavaScriptの奇奇怪怪な仕様については理解できている自信がないので、嘘書いているかもしれません。

配列の添え字

Javascriptの配列では添え字を数値で指定しても文字で指定しても同じ値が返ってきます。
添え字の加算や文字結合などもできます。

JavaScriptではオブジェクトもある意味連想配列なので、メソッドも配列の添え字として呼び出せます。

不思議ですね。

valueOfメソッド

valueOfメソッドは、オブジェクトの暗黙の型変換が行われる際によびだされます。
その特性を使って、暗黙の型変換を抑制するテクニックもあるそうです。
実用的かどうかはわかりませんが……

評価されるたびにランダムで値を返す配列というわけのわからないものもつくってみました。

Qiitaのコメント欄で教えていただいたのですが、toStringメソッドを上書きする方がきれいに書けます。

配列の添え字にオブジェクトを指定するとtoStringが呼ばれるみたいです。知らなかった。JavaScript奥が深い……

添え字で三項演算子

添え字の中で三項演算子も使えます。

添え字でメソッドの呼び出しができるので、三項演算子と組み合わせて使うことができます。
使いどころがわかりませんが……

JavaScriptってホント楽しいですね!