call

改变作用域的call,只是作用域改变了,就是this指向的东东(只接var定义的变量也挂在this下面,但是不能从外访问)

function fn() {
var name = "阿拉伯";
//this.name = "阿拉伯";

console.log(name);
}
fn.call();
fn.call({ name: "中国" });
fn.call({ name: "美国" });

 

结果都是“阿拉伯”,应为内部代码覆盖了外部作用域。

posted @ 2013-09-03 21:24  龙则  阅读(241)  评论(0编辑  收藏  举报