为什么我们用来检测对象的类型是什么功能?

时间:2014-02-06 05:48:25

标签: javascript

为什么我们几乎在所有这样的javascript应用程序中使用:

if ( typeof Object.create !== 'function' ) {
    Object.create = function( obj ) {
        function F() {};
        F.prototype = obj;
        return new F();
    };
}

2 个答案:

答案 0 :(得分:2)

这称为polyfill - 它检测当前用户浏览器是否支持javascript的功能,如果不存在,则定义它以便页面附带的其他脚本能够正常运行在那个浏览器上。

答案 1 :(得分:0)

如果您的函数在外部js文件中声明并且您不确定该文件是否已成功加载,则必须在调用之前进行检查,否则会抛出错误。

或者,如果您想检查当前浏览器是否支持任何特定功能。