Es6详解
一、 概述
- ECMAScript 是一种由Ecma国际通过ECMA-262标准化的脚本程序设计语言,在万维网上应用广泛,往往被称为JavaScript,可以理解为是JavaScript的一个标准。
- 快速发展:es2.0到es6.0
二、Es6的语法
1. let和const命令
<script>
let name1 = "xqh";
const PI2 = Math.PI;
console.log(name1)
console.log(PI2);
</script>
- let 和const解决:
- var会导致变量穿透的问题
- var会导致常量修改的问题
<script>
for(var i= 0;i<5;i++){
console.log(i);
}
console.log(i);
const PI = Math.PI;
PI=100;
console.log(PI);
</script>
2.模板字符串
<script>
var person={
name:"xqh",
address:"jiangxi",
link:"http://www.baidu.com"
}
let address = "我是"+person.name+",我住在"+person.address+",网站是"+person.link;
console.log(address);
let address1 = `我是${person.name},我住在${person.address},网站是${person.link}`;
console.log(address1);
</script>
3. 函数默认参数与箭头函数
- 函数默认参数
<script>
function sum(a=200,b=100){
return a+b;
}
var result = sum(200);
console.log(result);
</script>
- 箭头函数
<script>
var sum = function(a,b){
return a+b;
};
var sum = (a,b)=>a+b;
var result = sum(2,3);
console.log(result);
var arr = [1,2,3,4,5,6];
var newarr = arr.map(function(obj){
return obj*2;
});
console.log(newarr)
var newarr1 = arr.map(obj=> obj*2);
</script>
4. 对象初始化简写
- 如果一个对象中的key和value的名字一样的情况下可以定义成一个
<script>
let info={
title:"江西农业大学",
link:"www.baidu.com",
go:function(){
console.log("我骑着小蓝车去上课");
}
};
var title="江西农业大学";
var link = "www.baidu.com";
let info2 = {
title,
link,
go(){
console.log("我骑着小蓝车上课");
}
};
console.log(info2);
console.log(info2.link);
console.log(info2.title);
console.log(info2.go);
</script>
5.对象解构
- 对象解构—es6提供一些快捷获取对象属性和行为方式
<script>
var title="江西农业大学";
var link = "www.baidu.com";
let info2 = {
title,
link,
go(){
console.log("我骑着小蓝车上课");
}
};
console.log(info2);
console.log(info2.link);
console.log(info2.title);
info2.go;
console.log(info2["title"]);
console.log(info2["link"]);
info2["go"]();
var {title,link} = info2;
</script>
6.对象传播操作符
- 对象传播操作符
<script>
var person={
name:"学相伴",
address:"广东",
link:"www.kuangshen.com",
phone:123456,
go(){
console.log("开始上班了");
}
};
var {name,address,...person2}=person;
console.log(person2);
console.log(name);
console.log(address);
</script>
- 简单应用案例
<script>
var userPage = {pages:10,users:[{},{}],pageNo:1,pageSize:100,totle:100};
var {users,...userPage2}=userPage;
</script>
7.数组map和reduce方法使用
- 数组map
<script>
var arr =[1,2,3,4,5,6,7];
let newarr=[];
for(let i =0;i<arr.length;i++){
newarr.push(arr[i]*2);
}
console.log(newarr);
var newarr2 = arr.map(function(ele){
return ele*2
})
console.log(newarr2);
var users=[{age:10,name:"小学"},{age:12,name:"小胡"},{age:15,name:"小胖"}];
var newusers=users.map(ele=>{
ele.age = ele.age+1;
return ele;
});
console.log(newusers);
</script>
- reduce()使用
<script>
var arr=[1,2,3,4,5,6,7,8,9,10];
var result=arr.reduce(function(a,b){
return a+b;
});
console.log(result);
</script>
三、小结
- es6语法可以适用于nodejs中,不会报错
- 用终端输出