<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>类和对象</title> </head> <body> <!-- <script type="text/javascript"> //类 (一类事物) //使用class关键字 定义类,实例化得到对象 class A{ //构造方法 constructor(){ //在构造方法中定义属性 this.age = 30; } //实例方法 say(){ console.log('我是A中实例方法say'); } } var obj = new A(); //实例化类,会自动执行构造方法,并得到实例对象 console.log(obj); console.log(obj.age); obj.say(); </script> --> <!-- <script type="text/javascript"> //类 (一类事物) //使用class关键字 定义类,实例化得到对象 class A{ //构造方法 constructor(){ //在构造方法中定义属性 this.age = 30; } //实例方法 say(){ console.log('我是A中实例方法say'); console.log('我是A中实例方法say'+ this.age); } //静态方法 :不需要实例化对象,可以使用类名.方法() 调用 static coding(){ console.log('我是A中静态方法coding'); // console.log('我是A中静态方法coding' + this.age); // console.log(this); // this指向的是类A } } //静态方法调用,由于没有实例化过程,构造方法中的代码不会自动执行。 A.coding(); //调用实例方法 var obj = new A(); obj.say(); </script> --> <script type="text/javascript"> //类 (一类事物) //使用class关键字 定义类,实例化得到对象 class A{ //构造方法 constructor(){ //在构造方法中定义属性 this.age = 30; } //实例方法 say(){ console.log('我是A中实例方法say'); // console.log('我是A中实例方法say'+ this.age); } //静态方法 :不需要实例化对象,可以使用类名.方法() 调用 static coding(){ console.log('我是A中静态方法coding'); // console.log('我是A中静态方法coding' + this.age); // console.log(this); // this指向的是类A } //说明:静态方法和实例方法 名称可以相同,不会互相影响 //调用时,各有各的写法 static say(){ console.log('我是A中静态方法say'); } } //静态方法调用,由于没有实例化过程,构造方法中的代码不会自动执行。 A.coding(); A.say(); //调用实例方法 var obj = new A(); obj.say(); </script> </body> </html>