在这篇文章中,我们将讨论ES6类和ES5函数构造器之间的区别。两者都是为创建新对象服务的,但它们之间仍有一些区别。
ES6类构造函数: ES6类构造函数的工作原理与其他面向对象语言中的类构造函数完全相同。它们被用来创建新的对象。
class User {
constructor(name, age, gender) {
this.name = name;
this.age = age;
this.gender = gender;
}
print() {
console.log(`${this.name} has an age of
${this.age} and gender of ${this.gender}`);
}
}
const Obj = new User('MyName', '19', 'Male');
Obj.print();
ES5函数构造器: ES5函数构造器也被用来创建对象。通过使用函数构造器,上面的例子可以被修改如下:
function User(name, age, gender) {
this.age = age;
this.name = name;
this.gender = gender;
this.print = function () {
console.log(`${this.name} has an age of ${this.age}
and gender of ${this.gender}`);
};
}
const Obj = new User('Yii-bai', '19', 'Male');
Obj.print();
ES6类和ES5函数构造器之间的区别:
ES6类构造函数 | ES5函数构造函数 |
---|---|
如上所述,ES6类构造器通过在其原型(蓝图)中添加函数来创建对象。 | ES5函数构造器也是通过继承属性来创建对象的。 |
它确保开发者使用的这个关键词是指开发者正在创建的对象。 | 任何函数都可以被用作函数构造器,它主要侧重于创建可重复使用的对象创建代码。 |
它的语法类似于其他面向对象编程语言中的对象创建。 | 它的语法是独特的,一般不在其他面向对象的编程语言中出现。 |
这可以说是构造函数的语法基础,并使用new操作符来实例化对象。 | 这也是使用一个新操作符来创建对象,但重点是对象如何被实例化。 |
ES6类和ES5函数构造函数的区别
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果。
转载请注明:文章转载自 有区别网 [http://www.vsdiffer.com]
本文标题:ES6类和ES5函数构造函数的区别
本文链接:https://www.vsdiffer.com/vs/differences-between-es6-class-and-es5-function-constructors.html
免责声明:以上内容仅代表 个人看法、理解、学习笔记、总结和研究收藏。不保证其正确性,因使用而带来的风险与本站无关!如本网站内容冒犯了您的权益,请联系站长,邮箱: ,我们核实并会尽快处理。