对象及原型

1、OOP指什么,有哪些特性?

OOP(Object Oriented Programming),面向对象程序设计,是一种计算机编程架构。
OOP特性:
封装性:将一个类的使用和实现分开,只保留部分接口和方法与外部联系。
继承性:子类自动继承其父级类中的属性和方法,并可以添加新的属性和方法或者对部分属性和方法进行重写。
多态:允许不同类的对象对同一消息作出不同响应(对象可通过传递不同参数实现相同的动作)。

2、如何通过构造函数的方式创建一个拥有属性和方法的对象?

function Person(name){
  this.name = name;
  this.sayName = function(){
    console.log('Name is ' + this.name)
  }
}
var Person1 = new Person('Yun');
Person1.name;  //Yun
Person1.sayName(); //Name is Yun

3、prototype 是什么?有什么特性?

每个函数都有一个prototype属性,指向原型对象。
每个对象都有个内部属性proto,指向构造函数的prototype属性。

4、代码的原型图

对象及原型_第1张图片
原型.png

5、以下代码中的变量age区别

function People (){
  var age = 1  // 函数People的局部变量age
  this.age = 10; //实例变量,通过People函数创建的实例可以访问此变量
}
People.age = 20; //People的age属性

People.prototype.age = 30; //People对象的原型上的属性

你可能感兴趣的:(对象及原型)