JavaScript ES6 Class类实现原理详解,能否详细阐述其构造过程?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1126个文字,预计阅读时间需要5分钟。
JavaScript ES6 之前,没有 Class 类的概念,生成实例对象的传统方法是使用构造函数。例如:
javascriptfunction Mold(a, b) { this.a=a; this.b=b;}
Mold.prototype.count=function() { return this.a + this.b;};
let sum=new Mold(1, 2);
JavaScript ES6之前的还没有Class类的概念,生成实例对象的传统方法是通过构造函数。
例如:
function Mold(a,b){ this.a=a; this.b=b; } Mold.prototype.count=function(){ return this.a+this.b; }; let sum=new Mold(1,2); console.log(sum.count()) //3
这中写法跟传统的面向对象语言差异较大,写起来也比较繁杂。
ES6提供了更加接近其他语言的写法,引入了Class(类)的概念,作为对象的模板,可以通过class关键字,定义类(类似python、java等);
当然ES6的大部分功能再ES5都能实现,ES6的class可以看作是一个语法糖,只是新的class定义类的写法让对象原型的写法更加简单明了、更接近与面向对象的编程思想。
本文共计1126个文字,预计阅读时间需要5分钟。
JavaScript ES6 之前,没有 Class 类的概念,生成实例对象的传统方法是使用构造函数。例如:
javascriptfunction Mold(a, b) { this.a=a; this.b=b;}
Mold.prototype.count=function() { return this.a + this.b;};
let sum=new Mold(1, 2);
JavaScript ES6之前的还没有Class类的概念,生成实例对象的传统方法是通过构造函数。
例如:
function Mold(a,b){ this.a=a; this.b=b; } Mold.prototype.count=function(){ return this.a+this.b; }; let sum=new Mold(1,2); console.log(sum.count()) //3
这中写法跟传统的面向对象语言差异较大,写起来也比较繁杂。
ES6提供了更加接近其他语言的写法,引入了Class(类)的概念,作为对象的模板,可以通过class关键字,定义类(类似python、java等);
当然ES6的大部分功能再ES5都能实现,ES6的class可以看作是一个语法糖,只是新的class定义类的写法让对象原型的写法更加简单明了、更接近与面向对象的编程思想。

