搜索
搜索
本版
帖子
用户
老莫的笔记本
»
敲代码不为别的,就是为了找个媳妇
›
前端菜鸟的进阶之路
›
随笔
›
与 ES6 的战斗
1
2
/ 2 页
下一页
返回列表
查看:
1822
|
回复:
11
与 ES6 的战斗
[复制链接]
周大胖子
周大胖子
当前离线
积分
5169
664
主题
881
帖子
5169
积分
超级版主
积分
5169
发消息
发表于 2018-4-18 11:44:35
|
显示全部楼层
|
阅读模式
引入文件:
import "./src/arrow.js"
复制代码
该 .js 可以省略
回复
使用道具
举报
周大胖子
周大胖子
当前离线
积分
5169
664
主题
881
帖子
5169
积分
超级版主
积分
5169
发消息
楼主
|
发表于 2018-4-18 11:46:48
|
显示全部楼层
常量:
es5 中常量的写法 : Object.defineProperty(window,"PI2",{
value: 3.24132, //默认值
writable: false, //只读
})
es6 中常量的写法 : const pi = 3.14
复制代码
回复
使用道具
举报
周大胖子
周大胖子
当前离线
积分
5169
664
主题
881
帖子
5169
积分
超级版主
积分
5169
发消息
楼主
|
发表于 2018-4-18 11:47:58
|
显示全部楼层
作用域
在 ES6 中 一个 { } 就是一个单独的作用域
回复
使用道具
举报
周大胖子
周大胖子
当前离线
积分
5169
664
主题
881
帖子
5169
积分
超级版主
积分
5169
发消息
楼主
|
发表于 2018-4-18 11:48:11
|
显示全部楼层
箭头函数:
()=>{
}
【 (小括号里是参数) 参数只有一个的时候: () 的 值 可以不写 】
【{ } 如果 花括号里的表达式 可以直接作为返回值 那就可以省略 花括号】
以前是: function a(){ }
复制代码
回复
使用道具
举报
周大胖子
周大胖子
当前离线
积分
5169
664
主题
881
帖子
5169
积分
超级版主
积分
5169
发消息
楼主
|
发表于 2018-4-18 11:51:32
|
显示全部楼层
Es5: this 的 指向 : 哪个函数调用了谁 this 就指向谁
ES6: this 的 指向 : 谁定义了 this this 就指向谁
回复
使用道具
举报
周大胖子
周大胖子
当前离线
积分
5169
664
主题
881
帖子
5169
积分
超级版主
积分
5169
发消息
楼主
|
发表于 2018-4-18 11:51:57
|
显示全部楼层
ES5 的 写法:
var arr = [1,2,3,4,5]
var odd = arr.map(function(v){
return v + 1 //这里 v 就是循环里面的值
})
console.log(odd) //结果 2,3,4,5,6
ES6 的 写法:
{
let events = [1,2,3,4]
let odds = events.map( v => v+1);
console.log(odds)
}
复制代码
回复
使用道具
举报
周大胖子
周大胖子
当前离线
积分
5169
664
主题
881
帖子
5169
积分
超级版主
积分
5169
发消息
楼主
|
发表于 2018-4-18 11:52:49
|
显示全部楼层
默认参数:
Es6 写法: function f(x,y = 7 , z = 42){ return x + y + z }
必选参数:
{
function checkParameter(){
throw new Erroe('can\'t be empty')
}
function f(x = checkParameter(),y = 7, z= 42){
return x + y + z
}
try{
}catch(e){
console.log(e)
} finally{
}
}
复制代码
回复
使用道具
举报
周大胖子
周大胖子
当前离线
积分
5169
664
主题
881
帖子
5169
积分
超级版主
积分
5169
发消息
楼主
|
发表于 2018-4-18 11:53:35
|
显示全部楼层
可变参数的处理
可变长度扩展符号 ...a 这就是列表的意思 所以下面的操作
function f(...a){
var sum = 0;
a.forEach(item=>{
sum+=item*1
});
return sum
}
复制代码
回复
使用道具
举报
周大胖子
周大胖子
当前离线
积分
5169
664
主题
881
帖子
5169
积分
超级版主
积分
5169
发消息
楼主
|
发表于 2018-4-18 11:54:24
|
显示全部楼层
数组合并
//ES5 的写法:
var params = ['hello', true ,7];
var other = [1,2].concat(params);
console.log(other);
复制代码
//ES6 的写法:
{
let params = ['hellow' , true ,7]
var other = [1 , 2 , ...params];
console.log(other)
};
复制代码
回复
使用道具
举报
周大胖子
周大胖子
当前离线
积分
5169
664
主题
881
帖子
5169
积分
超级版主
积分
5169
发消息
楼主
|
发表于 2018-4-19 23:10:10
|
显示全部楼层
模板字符串:
var name='胖子';var age = '28console.log(name + '的年龄是'+ age);
复制代码
ES6写法
注意 console里面的
不是单引号
而是 ESC下面的 那个 啥符号来着
var name='胖子';var age = '28console.log(`${name}的年龄是${age}`)
复制代码
回复
使用道具
举报
下一页 »
1
2
/ 2 页
下一页
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
快速回复
返回顶部
返回列表