码迷,mamicode.com
首页 > Web开发 > 详细

js - this对象

时间:2016-07-10 21:25:17      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:

1、改变this

A:call()方法:

function sayNameForAll(label){
    console.info(label + ":" + this.name);
}

var person1 = {
    name : "Nicholas"
};

var person2 = {
    name = "Greg"
};

var name = "Michale";

sayNameForAll.call(this,"global");       //outputs “global:Michale”
sayNameForAll.call(person1,"person1");   //outputs "person1:Nicholas"
sayNameForAll.call(person2,"person2");   //outputs    "person2:Greg"

B:apply()方法:和call()方法一样,接受两个参数,this的值和一个数组或者类似数组的对象,内含需要被传入函数的参数,不需要像使用call()那样一个个指定参数

function sayNameForAll(label){
    console.info(label + ":" + this.name);
}

var person1 = {
    name : "Nicholas"
};

var person2 = {
    name = "Greg"
};

var name = "Michale";

sayNameForAll.apply(this,["global"]);       //outputs “global:Michale”
sayNameForAll.apply(person1,["person1"]);   //outputs "person1:Nicholas"
sayNameForAll.apply(person2,["person2"]);   //outputs    "person2:Greg"

 

js - this对象

标签:

原文地址:http://www.cnblogs.com/zhanghuiyun/p/5658323.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!