zoukankan      html  css  js  c++  java
  • 类方法,静态方法,实例化方法的区别

    学习javascript的同学尤其是一些初级学员很难弄清什么,类方法、静态方法、动态方法、实例化方法。虽然有些都一样,但是叫法不同。本着互联网分享精神,今天我就将我自己的见解分享给大家,希望能有所帮助。

    开始

      创建一个类(在es6中类是 class)

    function User(name, age) {
        this.name = name;
        this.age = age;
    }

       创建一个类的静态方法(也叫类方法)

    User.getClassName = function () {
        return 'User';
    };

      调用静态方法

      静态方法是在构造函数本身上定义的方法,只能通过构造函数本身调用,new出来的对象不能够调用。因为这个方法的执行者是这个类,不是这个类的实例。

    console.log(User.getClassName(), '静态方法调用');

      创建动态方法(也叫做实例化方法)

      动态方法,也叫做实例方法,它是通过prototype原型对象添加的,所有的实例对象都能够继承调用

    User.prototype.changeName = function (name) {
        this.name = name;
    };
    User.prototype.changeAge = function (age) {
        this.age = age;
    };
    Object.defineProperty(User.prototype, 'info', {
        get(){
            return 'name:' + this.name + '|age:' + this.age;
        }
    });

      实例化这个类

    var user = new User('leo', 22);
    //调用实例化方法(也叫动态方法) console.log(user.info);
  • 相关阅读:
    httpclient + TestNG 接口自动测试 第二章
    httpclient + TestNG 接口自动测试 第一章
    Kafka-manager启动命令
    多台服务器搭建Spark集群
    Scala学习 -- 基础语法
    Spark学习 -- RDD
    Spark 学习
    Angular constructor和OnInit的区别和适用场景
    TypeScript基础学习 —— 变量声明
    TypeScript基础学习 —— 基础类型
  • 原文地址:https://www.cnblogs.com/waitforyou/p/6803167.html
Copyright © 2011-2022 走看看