JavaScript类和对象

Posted zqq_hello_world

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript类和对象相关的知识,希望对你有一定的参考价值。

javascript

类是创建对象的模版,使用class来创建一个类,类中包含一个特殊方法constructor(),它是类的构造方法,用于创建和初始化一个由class创建的对象,如果不添加JavaScript会自动添加一个空的构造方法。
创建类的语法格式

class ClassName
    constructor()

创建一个Person类

//创建类
class Person
    constructor(name,sex)
        //初始化属性name、sex
        this.name = name;
        this.sex = sex;
    

类表达式

类表达式是定义类的另一种方法。

var Person = class
    constructor(name,sex)
        this.name = name;
        this.sex = sex;
    

var User = class User
    constructor(name,sex)
        this.name = name;
        this.sex = sex;
    

使用类

可以使用关键字new来根据定义的类创建对象。创建对象会自动调用类的构造函数constructor()

//定义类
class Person
    constructor(name,sex)
        this.name = name;
        this.sex = sex;
    

//创建对象
var p = new Person('zqq','男');

类的方法

JavaScript类可以有一个constructor()方法和任意数量的其他方法

class Person
    constructor(name,sex)
        this.name = name;
        this.sex = sex;
    
    run()
        console.log(name + ' is running====');
    

var p = new Person('zqq','男');
p.run();

类继承

JavaScript使用extends关键字来继承类

//父类
class Animal
    constructor(name)
        this.name = name;
    
    eat()
        console.log('eat food====');   
    


class Dog extends Animal
    constructor(name,color)
        super(name);
        this.color = color;
    

var dog = new Dog('狗狗','黑色');
console.log(dog.name);
dog.eat();

静态方法

JavaScript静态方法是使用static关键字修饰的方法,又叫类方法,属于类,不属于对象,可以使用类名.方法名调用。

class Person
    constructor(name)
        this.name = name;
    
    //定义静态方法
    static say()
        console.log('Hello World');
    

//调用静态方法
Person.say();

JavaScript对象

JavaScript中所有事物都是对象:字符串、数值、数组等。并且JavaScript允许自定义对象。对象是一种拥有属性方法的特殊数据。

创建对象

创建对象有两种方法

  1. 使用Object定义并创建对象实例
  2. 使用函数来定义对象,然后创建新的对象实例

使用Object

var person = new Object();
person.name = 'zqq';
person.age = 18;
console.log(person.name);

使用函数

function person(name,age)
    this.name = name;
    this.age = age;
    this.say = function()
        console.log('Hello World');
    

var p = new person('zqq',18);
console.log(p.name);
p.say();

以上是关于JavaScript类和对象的主要内容,如果未能解决你的问题,请参考以下文章

如何理解Javascript中类和对象这两个概念

创建 JavaScript 类和对象 prototype

javascript的对象类和方法

Javascript中类和对象的区别

JavaScript类和对象

JavaScript类和对象