2019年1月9日 ES6 学习心得
2024-10-15 21:02:30
ES6为我们创建对象提供了新的语法糖,这就是Class语法。如果你对ES5中面向对象的方式比较熟悉的话,Class掌握起来也是非常迅速的,因为除了写法的不同,它并不会增加新的难以理解的知识点。我们先利用一个简单的例子来看看写法的不同。
// ES5
// 构造函数
function Person(name, age) {
this.name = name;
this.age = age;
}
// 原型方法
Person.prototype.getName = function() {
return this.name
}
// ES6
class Person {
constructor(name, age) { // 构造函数
this.name = name;
this.age = age;
} getName() { // 原型方法
return this.name
}
}
babel会将ES6的写法编译成为利用Object.defineProperty实现的方式,这个方法的具体用处大家可以在《JavaScript高级编程3》中学习了解,包括get,set,等都有详细的说明
// JS常用套路
看到这段代码, 没明白是什么意思, 这里面的!!是什么语法呢?
export function isLogin() {
return !!cookie.load('token')
}
这是套路 , 如何把一个任意类型的值转换为布尔类型?
用!! 一个!是取非 再一个!又取非 相当于把这个数据转换为boolen类型了
还有
// 强制转换为Boolean 用 !!
var bool = !!"c";
console.log(typeof bool); // boolean // 强制转换为Number 用 +
var num = +"1234";
console.log(typeof num); // number // 强制转换为String 用 ""+
var str = ""+ 1234;
console.log(typeof str); // string
最新文章
- 【手记】为windows2008建个睡眠快捷方式
- 微信小程序 wx.uploadFile在安卓手机上面the same task is working问题解决
- input文本框去除单击时的边框的方法
- truncate表hang住(等待时间较长),出现enq:RO fast object reuse等待事件
- MySQL出错:ERROR 1045 (28000)的解决方法
- ERP员工入登记查询(六)
- Oracle11g导入*.dmp数据文件
- python-类和对象(属性、方法)的动态绑定
- php排序算法之选择排序
- Sublime 学习记录(一) Sublime 的快捷键
- JS二维数据处理逻辑封装探究
- elasticsearch系列(一) 术语
- margin-top塌陷
- 经典合集 - WP8.1数据源
- 随手心得(浅谈iOS)
- 【转】Python 3的pathlib模块:驯服文件系统
- linux修改文件为可执行文件
- vim常忘命令
- 基础的Servlet
- Codeforces Round #447 (Div. 2) 题解