84669 orang belajar
152542 orang belajar
20005 orang belajar
5487 orang belajar
7821 orang belajar
359900 orang belajar
3350 orang belajar
180660 orang belajar
48569 orang belajar
18603 orang belajar
40936 orang belajar
1549 orang belajar
1183 orang belajar
32909 orang belajar
var a=new Object(){ a.x=1; a.prototype.y=2;} var b = Object.create(a) 假如这样的话。B的原型指向a,a的原型里面有x这个值,那么a的x继承给了b很正常,问题来了,b有没有继承到y这个值?
Soalan tentang prototaip-tapak web PHP Cina Soal Jawab-Soalan tentang prototaip-PHP laman web Cina Soal Jawab
Lihat dan pelajari.
第一、prototype是一个构造函数的属性,不是一个对象实例的属性,所以,你这a.prototype.y=2;这句话是不对的,因为实例a没有prototype属性,按你的目的,应该这样写:Object.prototype.y=2;这样的话,a的原型中就有y属性了,且值为2。又因为a是b的原型,所以b从原型链上继承了y属性,即b.y的值为2。
代码
<!DOCTYPE html> <html> <head> <title>this is a title</title> </head> <body> <script> var a =new Object(); a.x=1; Object.prototype.y=2 //写成 a.prototype.y=2是不对的!!! var b= Object.create(a); console.log(a.y); //2 console.log(b.y); //2 </script> </body> </html>
Soalan tentang prototaip-tapak web PHP Cina Soal Jawab-Soalan tentang prototaip-PHP laman web Cina Soal Jawab
Lihat dan pelajari.
第一、prototype是一个构造函数的属性,不是一个对象实例的属性,所以,你这a.prototype.y=2;这句话是不对的,因为实例a没有prototype属性,按你的目的,应该这样写:Object.prototype.y=2;这样的话,a的原型中就有y属性了,且值为2。又因为a是b的原型,所以b从原型链上继承了y属性,即b.y的值为2。
代码