1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 </head> 7 <body> 8 <script> 9 var a = { 10 x:10, 11 cc:function(z){ 12 return this.x+this.y+z 13 } 14 } 15 var b = { 16 x:100, 17 y:20, 18 __proto__:a 19 } 20 var c = { 21 // x:10000, 22 y:30, 23 __proto__:a 24 } 25 var ww = b.cc(30); 26 var ww2 = c.cc(30); 27 console.log(ww) 28 console.log(ww2) 29 /* 30 注意一点,this这个值在一个继承机制中,仍然是指向它原本属于的对象,而不是从原型链上找到它时,它所属于的对象。例如,以上的例子,this.y是从b和c中获取的,而不是a。当然,你也发现了this.x是从a取的,因为是通过原型链机制找到的。 31 */ 32 </script> 33 </body> 34 </html>
时间: 2024-10-24 07:33:26