#Es6
函数 - 箭头函数
function 名字(){}
() => {}
1.如果只有一个参数 ()可以省
2.如果只有一个return {}可以省
---------------------------------------------------------------------
<script>
const arr = [66,77,11,23,443,1,31,324,234,54,366];
arr.sort((n1,n2)=>n1-n2);
alert(arr);
let show = a => a * 2;
alert(show(8))
function hello() {
console.log(this)
}
hello();
hi=()=>{console.log(this)};
hi()
</script>
注:
()只有一个参数可以省
{}只有一个return可以省
函数的参数
1.参数拓展/数组展开
2.默认参数
参数拓展
...args 收集剩余的参数
function (a,b,...args){
alert(a);
alert(a);
alert(args)
}
*rest parameter必须是最后一个 (last rest parameter)
展开
...args = > 2,3,4
展开后的效果就跟直接把数组的内容写在这一样
---------------------------------------------------------------------
<script>
function show(a,b,...args) {
alert(a);
alert(b);
alert(args);
}
show(12,15,1,4,6)
</script>
默认参数
$('#div1').animate({width:'200px'})
$('#div1').animate({width:'200px'},1000)
---------------------------------------------------------------------
解构赋值
1.左右两边结构必须一样
2.右边必须是个东西
3.声明和赋值不能分开必须在一句话里完成
let [a,b,c] = [1,2,3];
let {a,c,d} = {a:5,c:6,d:7};
---------------------------------------------------------------------
<script>
// let [a,b,c] = [1,2,3];
let {a,c,d} = {a:5,c:6,d:7};
console.log(a,c,d)
</script>
数组
map 映射 一个对一个
// let arr = [12,5,8];
// let result = arr.map(item =>item *2);
// alert(result)
// let score = [19,85,99,25,90];
// let result = score.map(item =>item >= 60?'及格':'不及格');
// alert(result)
reduce 汇总 一堆出来一个
算个总数 [12,8000000,7999999999999] => 123435222222
let arr = [12,423,4235,345,345];
let result=arr.reduce(function (tmp,item,index) {
return tmp+item
});
alert(result)
算个平均数 [12,59,99] => 56.67
let arr = [12,423,4235,345,345];
let result=arr.reduce(function (tmp,item,index) {
if(index != this.length -1){//不是最后一次计算
return tmp+item
}else{ //最后一次
return (tmp+item)/this.length
}
});
alert(result)
filter 过滤器
let arr = [
{
title:'男士鞋',price:975
},
{
title:'女士鞋',price:175000
},
{
title:'男士包',price:475
},
{
title:'女士包',price:27500
}
];
let result = arr.filter(json=>json.price>=10000);
console.log(result)
forEach 循环(迭代)
let arr = [12,5,8,9];
arr.forEach((item,index)=>{
alert(index+':'+item);
})
-------------------------------------------------------------------------------
<script>
let arr = [12,5,8,9];
arr.forEach((item,index)=>{
alert(index+':'+item);
})
</script>