俄罗斯方块关于apply函数的问题

Freewind.Base.apply(this, arguments);这个apply在BASE里面没有定义啊,还有
这个this是不是就是指apply,还有最开始有个this._isIE = document.all ? true : false;写这个有什么意义?
求解答

3个回答

apply是js自带的

 pply方法: 
语法:apply([thisObj[,argArray]]) 
定义:应用某一对象的一个方法,用另一个对象替换当前对象。 
说明: 
如果 argArray 不是一个有效的数组或者不是 arguments 对象,那么将导致一个 TypeError。 
如果没有提供 argArray 和 thisObj 任何一个参数,那么 Global 对象将被用作 thisObj, 并且无法被传递任何参数。

document.all[]不符合WEB标准,只有ie上有,所以能判断是不是ie浏览器

apply和call是每个方法都默认有的方法。。用于更改这个方法内this的指向。
http://www.cnblogs.com/fighting_cp/archive/2010/09/20/1831844.html

this不是指向apply,指向调用Freewind.Base这个方法的对象

this._isIE = document.all ? true : false;这个主要要来判断是否IE10-一下的IE,IE11不再支持这个对象,要使用下面的代码来判断


    function isIE() { //ie?  
        if (!!window.ActiveXObject || "ActiveXObject" in window)  
            return true;  
        else  
            return false;  
    }  
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问