Funny thing that functions like Math.Max internally receive that arguments as arrays (or array-like objects to be precise)
“Array-like”, that’s the keyword. I remember I was so confused when I first encountered that 😅
It looks like an array, but unfortunately, it isnt :(
Actually, maybe I should write a post about that. The arguments is an interesting topic and I don't think everyone knows that exists 🤔 Even if they knew, the post will be a nice reminder 😂
if you end up writing a post on it, I beg of you to include warnings about performance and analysis implications, as well as the "single rest argument"((...args)) alternative.
Honestly, that's the only way I see to offset the damage of more people finding out about/remembering it :D
AFAIK it causes deoptimization, while (...args) works much better.
Still, if you expect a real array, like in Math's case, you should just take an array.
These both fail with a stack overflow, and the only way to get an answer is to implement it yourself:
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.