js基础 ES6新特征

一、块级作用域
使用let关键字声明的变量
块级作用域:for循环中的{}之间,以及while,do-while{}中使用let声明的变量都是局部变量。ES6新增独立的{},可以作为块级作用域。

//块级作用域:变量只能在块范围使用
for(let i=0;i<5;i++){
  console.log(i);  //0 1 2 3 4 
};
//循环结束后,i的值
console.log(i); //访问不到

//es6新增的写法
{
  let a = 10;
}
console.log(a);

二、箭头函数
回调函数中传递的匿名函数

sort((a,b)=>{
  return a-b;
})
如果函数体中只有一行代码,并且是return 
sort((a,b)=>a-b);
var arr = [3,18,15,9];
arr.sort(function(a,b){
  return a-b;
});
console.log(arr);  //[ 3, 9, 15, 18 ]


var arr = [3,18,15,9];
arr.sort((a,b)=>{
  return a-b;
});
console.log(arr);  //[ 3, 9, 15, 18 ]


var arr = [3,18,15,9];
arr.sort((a,b)=>a-b);
console.log(arr);  //[ 3, 9, 15, 18 ]

三、函数中的参数
 在ES6中,函数的形参可以添加默认值,如果没有传递实参,就自动使用形参的值

function fn(a,b,c=0){ }  fn(1,2);

四、模板字符串
任何的符号,包括引号,回车,分号,都可以出现在模板字符串之间

`之间可以写任何的代码 $(变量名称) `
// 模板字符串之间的变量  $(变量名称)

五、相关练习
获取自己生日的Date对象,如果不是周末,提前到上一个周六,打印日期是多少?

//2018/7/18生日
var d = new Date();
//周一,提前2天
//周二,提前3天
var day = d.getDay();  //获取星期
var date = d.getDate(); //获取日期
switch(day){
  case 1:
	  d.setDate(date-2);
      break;
  case 2:
	  d.setDate(date-3);
      break;
  case 3:
	  d.setDate(date-4);
      break;
  case 4:
	  d.setDate(date-5);
      break;
  case 5:
	  d.setDate(date-6);
      break;
};
console.log(d.toLocaleString());


上一篇: js基础 错误处理
下一篇: 人生的很多坚强,都是被逼出来的
作者邮箱: 203328517@qq.com