ES6函数

<!DOCTYPE html>
<html>
<head>
<title>ES6函数</title>
<script type="text/javascript">
//ES6可以给默认值 类似python的函数
//function show(a='abc',b='bbb'){}

//ES6 中扩展运算符,Rest运算符 ...
// [1,2,3] -> ...[1,2,3] -> 1 2 3
// 1 2 3 -> ...arr -> arr是一个数组
// function show(...arr){}//和java的一样可变长度参数变成一个数组 ...arr必须是参数的最后一个,
//js中有argumnts就是参数

//箭头函数
//传统函数
// function show(){
// return 1;
// }
//show();
//箭头函数 (参数)->返回值
let show = ()=>1;//例子: let arr = [1,2,3,4,5,,6,7].filter(val=>val%2==0) //获取奇偶数
let show = args=>1;//当一个参数是可以不用谢()
//有执行代码的箭头函数【常用重点】
let show = ()=>{
//TODO
return ;
}

//箭头函数this问题
let json={
id:1,
show:function(){
setTimeout(function(){
altert(this.id);//此时this未定义,原因是因为此时的this是window
//var 定义的变量也是属于window的,所以如果在外边var定义一个id,this.id是可用调用的//但是不推荐
//推荐的方式是把这个函数改成箭头函数,此时this对象是json这个对象而不是window
//在箭头函数时函数内就没有argumnts数组了,正好可用 ...arr解决;
},1000);
}
}

//ES6.2 2017版本允许 对象或参数最后有多余的,了
//function(a,b,){}
// let json = {
// a:1,
// b:2,
// c:3,
// }
</script>
</head>
<body>

</body>
</html>

posted @ 2018-08-22 15:46  大火yzs  阅读(140)  评论(0编辑  收藏  举报