For clarification, as I should have mentioned: I am speaking only to code that has one of the following characteristics:
1. It’s new code
2. It’s a significant re-write
3. It’s a substantial refactoring of existing code or a refactor where using one of the newer apis would be trivial (e.g Reflect.apply vs Function.prototype.apply)
My philosophy is: Don't fix what isn't broken. I suspect that might also be the case for most large code bases.