• 老式浏览器支持新功能


    由于通过原型扩展内建对象是一项非常强大的技术,有了它,我们几乎可以随心所欲地重塑JavaScript语言的能力。但也正是它有如此强大的威力,我们在选择使用这项能力时,就必须慎之又慎。

    原因在于一旦开发者熟悉了JavaScript,那么他无论在使用哪些第三方库或者工具,他都会预期JavaScript内建对象与方法和他的认知相同。一旦修改了内建对象,他们的行为会发生改变,代码的用户与维护者就会觉得困惑,从而导致无法预期的错误。

    而JavaScript自身也会发展,浏览器厂商支持的功能会越来越多,没准我们今天所缺失的,想通过原型扩展的功能,明天就会出现在内建方法中。在这种情况下,我们的设计方法就不被需要了。

    其实,对基于相关内建对象来增加自定义方法这种技术来说,最常用且最能被接受的例子,是实现让老浏览器支持新功能,而且应该是被ECMAScript委员会标准化了的,为现代浏览器所实现的新功能。例如让旧版IE支持ES5中的方法。我们通常把这种扩展叫做shims或者polyfills

  • 相关阅读:
    小程序运行环境
    在虚拟机系统上安装oracle教程
    Java keywords
    Java bytecode instruction listings
    一个理解JVM的例子2
    一个理解JVM的例子
    JDK的环境变量设置
    JRE、JDK和JVM的关系
    合理的封装实例
    修改源码的几种取巧的方式
  • 原文地址:https://www.cnblogs.com/WaTa/p/5584288.html
Copyright © 2020-2023  润新知