Rumah  >  Artikel  >  hujung hadapan web  >  js中prototype是什么

js中prototype是什么

(*-*)浩
(*-*)浩asal
2019-05-20 18:26:388018semak imbas

js中Prototype表示了该函数的原型,prototype表示了一个类的属性的集合;当通过new来生成一个类的对象时,prototype对象的属性就会成为实例化对象的属性;无法访问到,也就是变为私有变量和私有函数。

js中prototype是什么

本文操作环境:Windows7系统、Dell G3电脑、javascript1.8.5。

prototype对象是实现面向对象的一个重要机制。每个函数也是一个对象,它们对应的类就是function,每个函数对象都具有一个子对象prototype。

Prototype 表示了该函数的原型,prototype表示了一个类的属性的集合。当通过new来生成一个类的对象时,prototype对象的属性就会成为实例化对象的属性。

这个属性非常有用:为一个特定类声明通用的变量或者函数。

在函数内定义的变量和函数如果不对外提供接口,那么外部将无法访问到,也就是变为私有变量和私有函数。

function Obj(){               
                var a=0; //私有变量
                var fn=function(){ //私有函数                }
            }

静态变量、函数

当定义一个函数后通过 “.”为其添加的属性和函数,通过对象本身仍然可以访问得到,但是其实例却访问不到,这样的变量和函数分别被称为静态变量和静态函数,用过Java、C#的同学很好理解静态的含义。

function Obj(){

            }
            Obj.a=0; //静态变量
            Obj.fn=function(){ //静态函数
            }
            console.log(Obj.a); //0
            console.log(typeof Obj.fn); //function

            var o=new Obj();
            console.log(o.a); //undefined
            console.log(typeof o.fn); //undefined

相关学习推荐:js视频教程

Atas ialah kandungan terperinci js中prototype是什么. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:js concat什么时候用Artikel seterusnya:TypeScript 和 JavaScript 的区别