ES6 新增特性

1.let 和const

避免了因var 声明变量引发的变量提升等问题
let a=1;
const b=2;

2.模块化

//导出 main.js
export let name='mokuai'
export funtion mokuai(age){
	return age;
}
//导入
import{name,mokuai} from 'main';

3.解构

从数组中取值

const arr = [1,3,5,7];
let [a,b]=arr;
let [a, , ,d]=arr;

从对象中取值

const obj={a:1,b:2,c:3,d:4}
let {a,b,c,d}=obj

修改默认的变量名称

let {a:k,b:l,c,d}=obj;

交换两个变量的值

let a=1; let b=3;
[a,b]=[b,a];

4.扩展运算符

拷贝数组

let arr = [1,2,3];
let arr1 = [...arr]

合并数组

let arr1 = [0,1,2];
let arr2 = [3,4,5];
let arr3 = [...arr1,...arr2];

将数组扩展后放置到其他数组的任意位置处

let arr4 = [8,7,...arr2,9];

将数组扩展为函数参数

funtion(x,y,z){
	return x+y+z;
}
const numbers = [1,2,3];

函数调用时,直接传入数组的扩展作为参数

joker(...numbers)

克隆对象,合并对象

let obj1 = {name:'joker',age:18};
let obj2 = {city:'dongguan'};

克隆对象:let obj3 = { …obj };
合并对象:let obj4 = { …obj1,…obj2 };

排除一些对象属性

let params = {name:'joker',age:18,type:'1'}'
//排除 type
let {type,...other}=params;

直接在参数上赋值

function joker(age,type){
//...
}
//赋值默认值
function joker(age=18,type=1){
//...
}

对象属性简写

const name = 'joker',age=18,city='dongguan';
const userInfo={
	name:name,
	age:age,
	city:city
}
//当对象的属性值和值的变量名一样时
const userInfo = {name,age,city}

5.async,await 异步调用

async function joker(params){
	let res=await getList(params)
	if(res.code===1){
		//...
	}
}

6. includes 方法

let arr = ['si','joker','dongguan'];
//判断是否包含 joker
if(arr.includes('joker')){
	//...
} 

7. 指数操作符

2**10 // 1024 2的10次方

8. Object.keys, Object.values, Object.entries 操作对象

const obj = {a:1,b:2,c:3};

const keys = Object.keys(obj); //[a,b,c]

const values = Object.values(obj);//[1,2,3]

Object.entries(obj);//[ [a,1],[b,2],[c,3] ]

//遍历对象
for( let [key,value] of Object.entries(obj)){
	consolg.log('key:${key} value:${value}')
}
// key:a value:1
// key:b value:2
// key:c value:3

9. NULL传导运算符(省略了做非空判断)

const info = message?.body?.data?.info;
//当左侧的值不为null 和underfined 的时候,取右侧的值

null判断运算符

const joker = response.data ?? '400';

当左侧的值不为null 和underfind 的时候,返回左侧的值,否则返回右侧的值

10. 模板运算符

const name = 'joker';
const age = 18;
const myInfo = 'my name is , my age is.'

在字符串中直接引用变量

const myInfo=`my name id ${name},my age is ${age}.`

变量的运算

const result = `${name} ${age >= 18 ? '成年了!':'未成年!'}`;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值