叼得一批的ES6,不学它学谁?嗯?

1 篇文章 0 订阅

1新增let let的变量只能在作用域内存在,执行完即销毁

2const 定义的常量建议用大写字母(例如:LOVE_YOU)命名,让一看到就知道是常量,而且声明和赋值要同时完成。

3新增变量解构赋值(数组)
例如:

var [a,b,c] = [1,2,3];

也可跳赋值

var [a, ,c] = [1,2,3];

还可以将余下的[2,3]以数组形式传递给c,前面加…(牛皮)

var [a,...c] = [1,2,3];

还可以这样,输出a:1 b:2 c:3 d:default

var [a,b,c="default",d="default"] = [1,2,3];

4新增变量解构赋值(对象)
快速赋值a,b变量(下面例子为简写,不重新命名变量的形式)

		var obj = {
    		a:1,
    		b:2
    	}
   		let {a,b} = obj;
   		console.log(a);
   		console.log(b);

快速赋值A,B变量(下面例子重新命名变量的形式)加:(重新命名变量)

		var obj = {
    		a:1,
    		b:2
    	}
   		let {a:A,b:B} = obj;
   		console.log(A);
   		console.log(B);

模拟接口返回数据,一句赋值,牛皮到不行

		let res = {
    		status:200,
    		id:2,
    		data:[{name:"adc"},{name:"jack"}]
    	}
    	let {status,id,data} = res; //按照名称赋值,此方法也可直接赋值方法。
    	console.log(status);
    	console.log(id);
    	console.log(data);

也可以直接输出length

		let {length} = ",yo";
		console.log(length);

解构字符串

		let [a,b,c] = ",yo";
		console.log(a + "-" + b + "-" + c);

还能无视方法的参数调用顺序和直接赋初始值

		let obj = {b:2}
		function test({a = 10,b}){
			console.log(a);
			console.log(b);
		}
		test(obj);

新增字符串方法

//用.includes()返回是否包含某元素。返回Boolean
console.log("yo.".includes("y"));
//用.startsWith()返回是否以某元素开头。返回Boolean
console.log("yo.".startsWith("o"));
//用.endsWith()返回是否以某元素结束。返回Boolean
console.log("yo.".endsWith("o"));
//用.repeat()重复多少次,下例是3次。
console.log("yo.".repeat(3));

用``包html代码,用${title}包含变量即可转变html代码,随便换行

let title = "野外生存基地";
let tpl = `
<div>
	<p>${title + `
		<span>${title}</span>
	`}</p>
</div>
`;
console.log(tpl);

这里写图片描述
Proxy方法设置set和get

var user = new Proxy({},{
	get: function(obj,prop){
		console.log(obj);
		console.log(prop);
		if(prop === "fullname"){
			return obj.fname + " " + obj.lname;
		}
	}
});
user.fname = "刘";
user.lname = "晓飞";
console.log("user.fullname:" + user.fullname);

Set

var arr = [1,2,3,4];
console.log(arr);
console.log(arr.length);
var s = new Set([1,2,3,4]); //与arr区别在于重复的值会合并
console.log(s);
console.log(s.size);//size = arr的length
//增加某值
s.add(5);
console.log(s);
//删除某值
s.delete(2);
console.log(s);
console.log(s.has(5)); //是否存在,boolean
s.clear(); //全部清空
console.log(s)

添加

var obj = {
	a:1,
	b:2
}
let a;
//{}放行最前的话会当成代码块,加()说明仅仅是结构语句
({a,b} = obj);

模版字符串

//es6模版字符串
var a = "张三";
console.log(`${a}的年龄是21`);

es6方法的简写

run(){}

展开操作符

export和export default对比
https://blog.csdn.net/chelen_jak/article/details/79635966

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值