前端开发

 首页 > 前端开发 > javascript > js原型的面试题讲解

js原型的面试题讲解

分享到:
【字体:
导读:
          原题如下: functionA(){}functionB(a){ this.a=a;}functionC(a){ if(a){this.a=a; }}A.prototype.a=1;B.prototype.a=1;C.prototype.a=1;console.log(newA().a);console.log(newB().a);console.log(newC(2).a); 分析: console.log(new A().a); //new...


原题如下:

function A(){
}
function B(a){
  this.a = a;
}
function C(a){
  if(a){
this.a = a;
  }
}
A.prototype.a = 1;
B.prototype.a = 1;
C.prototype.a = 1;
 
console.log(new A().a);
console.log(new B().a);
console.log(new C(2).a);

分析:

console.log(new A().a);  //new A()为构造函数创建的对象,本身没有a属性,所以向它的原型去找,发现原型的a属性的属性值为1,故该输出值为1;

console.log(new B().a);  //new B()为构造函数创建的对象,该构造函数有参数a,但该对象没有传参,故该输出值为undefined;

console.log(new C(2).a);  //new C()为构造函数创建的对象,该构造函数有参数a,且传的实参为2,执行函数内部,发现if为真,执行this.a = 2,故属性a的值为2;

故这三个的输出值分别为:1、undefined、2.  


分享到:
canvas画简单的圆和时钟效果
今天特意学了下三角函数来画一个时钟效果, 公式是:     //计算坐标点     x1   =   r   +  r/2  *  Math.cos(angle  *  Math.PI / 180 ) ;     y1   =   r   +  r/2  *  Math.sin(angle   *   Math.PI /180  ) ; 代码:          mt3老玩...
JavaScript SHA1加密算法源码
下面是源码: /*  * A JavaScript implementation of the Secure Hash Algorithm, SHA-1, as defined  * in FIPS 180-1  * Version 2.2 Copyright Paul Johnston 2000 - 2009.  * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet  * Distributed under the BS...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……