es6笔记(个人)

介绍

  ECMAScript是JavaScript的标准,JS是ES的实现;
  ES6正式名称:ECMA2015,是ECMA标准的第6版;

变量

let const 块级作用域

varletconst
重复声明不能重复声明不能重复声明
不能限制修改变量,可修改常量,不可修改
函数级块级块级
可以在声明前调用,显示undefined报错报错

块级作用域:只在代码块内可用
函数级作用域:只在函数内可用

解构赋值

注意点:

  1. 两边的结构必须一样
  2. 右边必须是个东西,合法
  3. 赋值和解构必须同时完成
let {a,b}={a:1,b:2} //1,2

let [a,b]=[1,2] //1,2

let {a,b}=[1,2] //undefined undefined 结构不一样

let [a,b]={1,2} //Uncaught SyntaxError: Unexpected token ',' 右边不合法

let [a,b]
[a,b]=[1,2] //Uncaught SyntaxError: Missing initializer in destructuring declaration 赋值和解构没有同时进行

函数

箭头函数

简写

function(){} //原写法
()=>{} //箭头函数

注意点:

  1. 如果有且仅有一个参数,()可以不写
  2. 如果有且仅有一个语句,并且是return,{}也可以不写
function show(n,fn){
		console.log(fn(n));
}
//原写法
function add(n){
		return n+5;
}
show(0,add)
//箭头函数
show(0,(n)=>{return n+5})
//省略()
show(0,n=>{return n+5})
//省略{}
show(0,(n)=>n+5)
//省略()和{}
show(0,n=>n+5)

修正this

将this固定到当前环境(我也不太懂~~)

参数展开,收集 数组展开 json展开(’…’)

收集参数(必须在最后一个)

fn(1,2,3,4,5)
function fn(a,b,...c){
	console.log(a,b,c); //1 2 [3, 4, 5]
}

展开参数

let a=[1,2,3]
fn(...a)
function fn(a,b,...c){
	console.log(a,b,c); //1 2 3
}

数组展开

let a=[1,2]
let b=[3,4]
let c=[...a,...b]
console.log(c); //[1, 2, 3, 4]

json展开

let json={a:1,b:2}
let json2={...json,c:3}
console.log(json2); //{a: 1, b: 2, c: 3}

原生对象扩展

Array扩展

map

映射:一一对应

let arr=[58,45,76,87]
let arr2=arr.map(function(item,index){
	if(item>=60){
		return "及格"
	}else{
		return "不及格"
	}
})
console.log(arr2) //["不及格", "不及格", "及格", "及格"]
//简便写法
let arr2=arr.map(item=>item>=60?'及格':'不及格')

reduce

let arr=[23,45,56,67,75]

//求和
let and=arr.reduce(function(tmp,item,index){
	return tmp+item
})
console.log(and) //266

//求平均值
let mean=arr.reduce(function(tmp,item,index){
	if(index==arr.length-1){
		return (tmp+item)/arr.length
	}else{
		return tmp+item
	}
})
console.log(mean) //53.2

filter

查找筛选

forEach

遍历

JSON

JSON中必须使用双引号

JSON.stringify()

将JSON对象转换成字符串

JSON.parse()

将字符串转换成JSON对象

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

苦夏木禾

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值