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