首页 > Polyfill是什么啊 为什么他拿给你解决兼容问题

Polyfill是什么啊 为什么他拿给你解决兼容问题

Polyfill是什么啊 为什么他拿给你解决兼容问题


Polyfill你可以理解为“腻子”,就是装修的时候,可以把缺损的地方填充抹平。

举个例子,html5的storage(session,local), 不同浏览器,不同版本,有些支持,有些不支持。

我们又想使用这个特性,怎么办?

有些人就写对应的Polyfill(Polyfill有很多),帮你把这些差异化抹平,不支持的变得支持了(简单来讲,写些代码判断当前浏览器有没有这个功能,没有的话,就写一些支持的补丁代码)。

你只需要把需要的Polyfill引入到你的程序里,就可以了。

比如下面就是对html5各个特性支持的Polyfill,你需要哪个,就引入哪个。当然,你也可以自己写 :)
https://github.com/Modernizr/...


垫片,就是帮你加一层东西来解决问题,不光是兼容性问题,pollyfill是个概念


有些方法你不支持,Polyfill使用你支持的方法帮你实现了这些你不支持的方法。


没那么复杂……
举个例子,有些旧浏览器不支持Number.isNaN方法,Polyfill就可以是这样的:

if(!Number.isNaN) {
    Number.isNaN = function(num) {
        return(num !== num);
    }
}

啥意思呢,就是假如浏览器没有Number.isNaN方法,那咱们就给它添加上去,所谓Polyfill就是这样解决API的兼容问题的。

【热门文章】
【热门文章】