ECMAScript 6 学习系列课程 (ES6 class的相关用法)
来源:互联网 发布:防止sql注入的函数 编辑:程序博客网 时间:2024/06/04 21:09
面向对象的变成思想,是现在最流行的一种思想,java C++ c# php, 等等都是面向对象的语言,提到面向对象,我们肯定要提到类的概念,因为有类才有对象, 那么如果定义一个类,就至关重要了。
ES6不得不说已经向大语言靠拢了, 在ES6中我们居然看到了Class的语法,是不是很牛,而且还可以定义构造方法,实例化一个类,我们也可以像java一样 new 一个class。 不仅如此,我们还可以实现继承的操作, 话不多说,我们看代码:
//定义类class Point { constructor(x, y) { this.x = x; this.y = y; } toString() { return '(' + this.x + ', ' + this.y + ')'; }}
上面的代码就是通过class定义的一个类,constructor()就是我们所谓的构造方法了,通过构造方法可以对对象的属性进行初始化赋值操作。
如果想定义一个对象的方法,也不需要通过function, 只需要制定一个名字,比如 toString() {}这样就ok。
对于这样一个函数,如果我们用ES5我们就需要通过原型链的概念:
function Point(x, y) { this.x = x; this.y = y;}Point.prototype.toString = function () { return '(' + this.x + ', ' + this.y + ')';};var p = new Point(1, 2);
定义了一个类同样可以继承一个类,继承操作,是通过extends完成, 比如:
class Point extends Point A{ constructor(x, y) { super(); this.x = x; this.y = y; } toString() { return '(' + this.x + ', ' + this.y + ')'; }}
如果继承一个类,我们可以使用父类的方法和属性,但是在子类的构造中需要指定super()。
另外需要注意的一点是, class不会存在变量提升。
0 0
- ECMAScript 6 学习系列课程 (ES6 class的相关用法)
- ECMAScript 6 学习系列课程 (ES6 gulp+babel 语法转化的相关用法)
- ECMAScript 6 学习系列课程 (ES6 proxy和Reflect的相关用法)
- ECMAScript 6 学习系列课程 (ES6 Modules的使用)
- ECMAScript 6 学习系列课程 (ES6 对象的最新用法)
- ECMAScript 6 学习系列课程 (ES6简介)
- ECMAScript 6 学习系列课程 (ES6 Symbol语法的使用)
- ECMAScript 6 学习系列课程 (ES6 Generator 函数的使用)
- ECMAScript 6 学习系列课程 (ES6 Promise对象的使用)
- ECMAScript 6 学习系列课程 (ES6 Internationalization & Localization的介绍)
- ECMAScript 6 学习系列课程 (ES6 常用内置方法的使用)
- ECMAScript 6 学习系列课程 (ES6 箭头函数的使用)
- ECMAScript 6 学习系列课程 (ES6 默认值和解构赋值的使用)
- ECMAScript 6 学习系列课程 (ES6 Set和Map数据结构)
- ECMAScript 6 学习系列课程笔记
- ECMAScript 6(ES6)
- ES6(ECMAScript 6)学习笔记
- ES6 Class的用法
- Activiti流程变量
- 去年校招的经验分享
- Android百分比布局Percent支持库
- iOS 上传数据到后台
- 点阵字体(也叫位图字体或光栅字体)、矢量字体
- ECMAScript 6 学习系列课程 (ES6 class的相关用法)
- Javascript 进阶 作用域 作用域链
- java之可自动增长容器
- sd_webimage 可以直接给 image赋值
- js中form表单的简单封装
- 放下过去,拥抱将来
- 第一章 Android开发简介和常见控件介绍
- 系统调用日志收集系统
- Eclipse Maven问题