javascript 基础 js类和原型到底是什么

JavaScript05

javascript 基础 js类和原型到底是什么,第1张

一个函数可以看成一个类,原型是所有类都有的一个属性,原型的作用就是给这个类的每一个对象都添加一个统一的方法

如:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">

<head>

    <meta http-equiv="Content-Type" content="text/htmlcharset=UTF-8">

    <title>Document</title>

    <script>

    //声明一个类

    function Person(name,age)

    {

        this.name=name

        this.age=age

    }

    //使用原型给类添加方法

    Person.prototype.show=function()

    {

        alert("我叫"+this.name+",今年"+this.age)

    }

    //创建两个对象

    var person1 =new Person('张三',20)

    var person2 =new Person('李四',23)

    //调用原型里面的方法

    person1.show()

    person2.show()

    </script>

</head>

<body>

     

</body>

</html>

JS原型:构造函数(类)的实例都具有一个prototype属性,这个属性是一个指针,指向构造函数的原型对象,当调用构造函数创建一个新实例时,每个实例都会继承构造函数原型上的属性和方法。

JS原型链:JS采用原型链的模式实现继承,每个对象都有一个指向父对象的指针,当查找对象的属性时,会从当前对象的原型开始沿着指针向上查找,直到找到一个名称匹配的属性或者到达原型链的最顶端,Object.prototype为空,则停止查找。