zoukankan      html  css  js  c++  java
  • javascript学习随笔(二)原型prototype

    JavaScript三类方法:

    1、类方法;2、对象方法;3、原型方法;注意三者异同

    例:

     1 function People(name){
     2 this.name=name;
     3 //对象方法
     4 this.Introduce=function(){
     5 console.log('My Name Is '+this.name);
     6 }
     7 }
     8 
     9 //类方法
    10 People.Run=function(){
    11 console.log('I Can Run');
    12 }
    13 
    14 //原型方法
    15 People.prototype.IntroduceChinese=function(){
    16 console.log('我的名字是'+this.name);
    17 }
    18 
    19 //测试
    20 var p=new People('Tom');
    21 
    22 p.Introduce();
    23 People.Run();
    24 p.IntroduceChinese();

     JavaScript对象类型原型引用,切记将某对象的原型赋给某对象原型,这不是继承关系,而是将克隆,且存在冲突函数或属性时,保留自己的函数和属性

    例1、

     1 function  BaseClass(){
     2 this.showMsg=function(){
     3 alert('baseClass::showMsg');
     4 };
     5 }
     6 
     7 function  ExtendClass(){
     8 
     9 }
    10 
    11 ExtendClass.prototype=new BaseClass();
    12 
    13 var extend=new ExtendClass();
    14 extend.showMsg();//弹出baseClass::showMsg

    例2、

     1 function  BaseClass(){
     2 this.showMsg=function(){
     3 alert('bassClass::showMsg');
     4 };
     5 }
     6 
     7 function  ExtendClass(){
     8 this.showMsg=function(){
     9 alert('extendClass::showMsg');
    10 };
    11 }
    12 
    13 ExtendClass.prototype=new BassClass();
    14 
    15 var extend=new ExtendClass();
    16 extend.showMsg();//弹出extendClass::showMsg

    函数运行时会先去本体的函数中去找,如果找到则运行,找不到则去prototype中寻找函数。或者可以理解为prototype不会克隆同名函数.

  • 相关阅读:
    1.常用命令
    虚拟机共享文件夹
    Docker安装 和简单使用
    js方法名通过参数传递调用实例
    highcharts参数说明
    绘制HightCharts饼状图
    附加数据库失败,操作系统错误 5:”5(拒绝访问。)”的解决办法
    ckeditor相关使用
    针对MySQL提高百万条数据的查询速度优化
    SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
  • 原文地址:https://www.cnblogs.com/hujiapeng/p/4514327.html
Copyright © 2011-2022 走看看