js中的this和prototype

定义一张车票

var ticket = function(){ //定义车票,还没有被卖出去
    this.price = 170; //车票价格
}

直接alert(ticket.price)提示undefined,因为车票没有被卖出去(没有实例化)

var zhangsan = new ticket(); //代表被卖出去了
alert(zhangsan.price); //打印:170
var lisi = new ticket();
lisi.price = 300; //通过黄牛去购买
alert(lisi.price); //300

prototype是啥?
官方解释:返回对象类型原型的引用。
说到底,就是那张还没有被卖出去的车票(ticket)。

ticket.prototype.year = 2016;
var wangwu = new ticket();
alert(wangwu.year); //2016

你可能感兴趣的:(js中的this和prototype)