Javascript:call和apply

call和apply的主要作用是对象冒充

call(obj,arg1,arg2,arg....)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <div class="red">Hello Word!</div>

<script type="text/javascript">

    var oDiv = document.getElementsByTagName("div")[0];
var className = "blue"; function sayName(){ alert(this.className); } window.sayName(); //blue          window对象下的sayName    oDiv.onclick = function (){                         sayName();            //blue 调用的还是window对象下的sayName() 怎么让sayName函数中的this指向当前对象的作用域? sayName.call(this); //red 就用call()
     //实际上就相当于给oDiv这个对象添加了一个方法 oDiv.sayName = sayName    
} </script> </body> </html>   

 

  

posted @ 2016-01-01 10:59  Tys0n  阅读(108)  评论(0)    收藏  举报