码迷,mamicode.com
首页 > 其他好文 > 详细

S1:new操作符

时间:2014-08-21 13:04:04      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   java   io   ar   div   cti   

function Shape(type){
    this.type = type || "rect";
    this.calc = function(){
        return "calc, "+this.type;
    }
}
var triangle = new Shape("triangle");
print(triangle.calc());
var circle = new Shape("circle");
print(circle.calc());
//运行结果如下:
calc, triangle
calc, circle    

在JavaScript中,通过new操作符来作用与一个函数,实质上会发生这样的动作:
首先,创建一个空对象,然后,用函数的apply方法,将这个空对象传入作为apply的第一个参数,及上下文参数。这样函数内部的this将会被这个空的对象所替代:

var triangle = new Shape("triangle");
//上一句相当于下面的代码
var triangle = {};
Shape.apply(triangle, ["triangle"]);

 

S1:new操作符,布布扣,bubuko.com

S1:new操作符

标签:style   blog   color   java   io   ar   div   cti   

原文地址:http://www.cnblogs.com/kuangliu/p/3926716.html

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