Regarding your first question: https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/1.8

Safari pretty much *suck*, as it breaks when using the type application/javascript with the version switch and also does not support let, nor the Iterator. I have removed those and the type attribute on script tag.