我拒绝使用__defineProperty__
,而是更喜欢替代语法{get X() {}}
但是这在 IE 上不起作用。
除了浏览器检测之外,我可以检测浏览器支持较新语法的最佳方法是什么?
编辑:好吧,实际上我并没有尝试特别检测 IE,而是将那些“不支持 get X(){} 语法的浏览器”重定向到 notsupported.html 。我相信有某种方法可以做到这一点并且正在努力,但万一有人以前已经遇到过这个问题并找到了解决方案..
编辑 2:顺便说一句,这并不意味着没有人(除了我之外)使用 get X(){} 语法,因为它不被所有人支持(或者不被 5 支持)主要浏览器还没有)?
最佳答案
正如其他人所指出的,您不能强制较旧的(当前!)浏览器接受较新的语法。您会如何处理浏览器检测?对于旧浏览器使用旧语法,否则使用新语法?那么您就需要编写两次相同的代码。
确定您需要支持的一组浏览器,确定它们可以向您保证哪些功能,然后限制自己使用这些功能。这就是网络开发的工作原理。
关于javascript - 如何确保浏览器能够支持 **{get X() {}}**,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5732659/