Have you tested any of these yet? You should be able to tell us if they work Also, how are you planning on calling the second and third functions in your code?
I would say no. Polyfills are generally used to provide newer functionality in browsers that don’t yet support it. There is no forEach method for HTMLCollections, so no browsers support it because it doesn’t exist and thus you aren’t creating a polyfill, you are creating new functionality.
Also, just in case you weren’t aware, you can iterate over an HTMLCollection using a for...of loop. I suppose I can see an argument for extending the prototype in the first method so you get slightly more concise code that mimics Array.forEach (although not everyone thinks that is a good idea), but I’m not sure I see any advantages to the second or third methods. And I wouldn’t bother with the third method. Nobody uses arguments any more.