先日次のツイートを見かけた。 I have been writing Javascript since roughly 1997 but it still manages to occasionally do something that absolutely shocks me pic.twitter.com/JyYOo4wGOu — mcc (@mcclure111) January 11, 2022 JavaScript では [1, 2, 3] + [4, 5, 6] の結果が "1,2,34,5,6" であり、この挙動が直感に反しているというツイートである。 実際のところ筆者も直感に反していると思う。しかしこの挙動は至って ECMAScript の仕様通りである。 この記事では、なぜこの挙動が ECMAScript の仕様に従っていると言えるのか仕様を引用して説明する。 大雑把な
![なぜ JavaScript の [1, 2, 3] + [4, 5, 6] は '1,2,34,5,6' なのか](https://cdn-ak-scissors.b.st-hatena.com/image/square/e11bede1e8a8f416112d241a038b3d49ef7aa4f8/height=288;version=1;width=512/https%3A%2F%2Fsosukesuzuki.dev%2Fimg%2Flarge-logo.jpeg)