码迷,mamicode.com
首页 > 其他好文 > 详细

ES6构造函数class 和 ES5构造函数语法

时间:2020-04-19 01:06:46      阅读:63      评论:0      收藏:0      [点我收藏+]

标签:tor   功能   this   对象   完全   调用   family   prototype   his   

ES5和ES6的语法功能作用完全相同,只是语法不同。

ES6class写法只是让对象原型的写法更加清晰、更像面向对象编程的语法而已。

1. ES5语法

1 function Fun1(name,age){
2     this.name = name;
3     this.age = age;
4 }
5 Fun1.prototype.f1 = function(){
6     console.log(this.name , this.age);
7 }

 

2. ES6语法 class

constructor构造器,() 中定义的是class类的参数,在构造器中定义实例化对象的属性和属性值;

构造函数的方法, f() 也是定义在prototype中的;

 1 class Fun2{
 2     constructor(name,age){
 3         this.name = name;
 4         this.age = age;
 5     }
 6 
 7     f2(){
 8         console.log(this.name , this.age);
 9     }
10 
11 }        

 

ES5和ES6语法的区别

ES6语法定义的class类,不会被JavaScript预解析,不能提前调用;

ES5语法的function可以提前调用,但是只有属性可以提前调用, prototype里的方法不能提前调用,因为定义prototype是在function函数外定义的,如果提前调用函数, prototype里的方法还没执行。

 

逆战班

 

 

 

 

ES6构造函数class 和 ES5构造函数语法

标签:tor   功能   this   对象   完全   调用   family   prototype   his   

原文地址:https://www.cnblogs.com/jayreally/p/12729210.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!