函数以及调用方式

// 1. 普通调用方式
var name = '张三';
function showInfo(){
    console.log(this.name);
    console.log(this === window);
}
showInfo();

// 2. 方法调用方式
var stu = {
    name : '张三',
    showInfo : function(){
        console.log(this.name);
        console.log(this === stu);
    }
};
stu.showInfo();

// 3. 构造函数调用方式
function Student(name, age){
    // var this = new Object();
    this.name = name;
    this.age = age;
    this.showInfo = function(){
        console.log(this.name);
        console.log(this.age);
    }

    // return this;
}
var stu = new Student('张三', 18);
stu.showInfo();
// console.log(stu.name);
// console.log(stu.age);

var l4 = new Student('李四', 19);
l4.showInfo();

// 4. call() 和 apply() 调用方式
function showInfo(nickname, hobby){
    nickname = nickname || '无';
    hobby = hobby || '无';
    console.log("姓名:" + this.name);
    console.log("年龄:" + this.age);
    console.log("昵称:" + nickname);
    console.log("爱好:" + hobby);
}
var z3 = {name : '张三', age : 18};
var l4 = {name : '李四', age : 28};
showInfo.call(z3, '燕子', '飞檐走壁');
console.log('-----------------------------------------');
showInfo.apply(l4, ['大头', '广场舞']);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值