JS高级---实例对象使用属性和方法层层的搜索 (实例对象-->原型对象-->报错)

实例对象使用属性和方法层层的搜索:

 
实例对象使用的属性或者方法, 先在实例中查找, 找到了则直接使用;
找不到则, 再去实例对象的__proto__指向的原型对象prototype中找, 找到了则使用, 找不到则报错。
 
<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<title>title</title>
<script>
function Person(age, sex) {
this.age = age;//年龄
this.sex = sex;
// this.eat = function () {
// console.log("构造函数中的吃");
// };
}
Person.prototype.sex = "女";
Person.prototype.eat = function () {
console.log("原型对象中的吃");
}; var per = new Person(20, "男");
console.log(per.sex);//男 实例化的属性或方法,现在实例对象里面找
per.eat(); //"原型对象中的吃" 实例对象中找不到的时候,再去原型对象中找
console.dir(per); </script>
</head> <body> </body> </html>
上一篇:JS对象 JavaScript 中的所有事物都是对象,如:字符串、数值、数组、函数等,每个对象带有属性和方法。


下一篇:用#define来实现多份近似代码 - map,set中的应用