let关键字:
let关键字是用于声明变量的,类似于var,但是他有些特殊的特性。
//重复声明会报错
let b="admin";
let b="user";//
console.log("使用let声明=>",b)
块级作用于,var没有作用域之分,就是在块级里面声明的变量,在全局,别的代码块里面也能用,而let不行。代码块指的是 if 、else if、 else、for、while等
{
let d="admin";
console.log("使用let在代码块声明变量在里面使用=>",d);//可以正常使用
}
console.log("使用let在代码块声明变量在外面使用=>",d);//报错
const关键字:
const关键字是用于声明常量的,也就是声明时就要赋值,并且之后再也不能更改。
const a;
a="4";//不允许修改
这里的不能修改是指,如果是基本类型,那么就不能对其值进行修改,如上面的例子,如果是对象或者数组的换,就不能对对象或者数组的引用进行修改,但是可以对其元素进行修改。
//可以对内部元素进行修改
const a=[1,2,3,4];
a.push(5);
console.log(a);
const b={
name:'杨';
age:"18"
}
b.name="Yang";
console.log(b);
块级作用域,跟let一样。
const一般用于声明对象,let用于声明基本数据类型。
解构赋值:
ES6允许按照一定的模式从数组或者对象中提取值,对变量进行赋值,称为解构赋值。
//数组解构
const arr=[1,2,3];
let [one,twe,three] = arr;
console.log(one);
console.log(twe);
console.log(three);
//对象解构
const obj={
name:"admin";
sex:"男";
age:"18";
item:function(){
console.log("解构")
}
}
//解构的属性名要与obj中的对应
let [name,sex,age,item] = obj;
console.log(name);
console.log(sex);
console.log(age);
console.log(item);
item()
声明字符串的方式 ``:
let count = 18;
//拼接
let old = "<div>" + count+ "</div>";
let new = `<div>${count}<div>`;
console.log(old);
console.log(new);
对象属性定义的优化
ES在定义对象属性时,如果属性名和属性值对应的变量的字符串是一样时,可以省略属性值。
let name = "admin";
let age = 18;
const obj = {
name,
age
}
箭头函数
ES新增了一种定义函数的语法,箭头函数。
①、形参个数如果为1个,可以省略小括号不写。
②、如果函数体里面只有一个语句,可以省略大括号不写, 并且他会默认返回 => 符号后面的数据。
③、如果函数体有多个语句,则不能省略大括号。
④、如果函数体只有一个语句,且返回一个对象,建议是,不要写简写的方式。
<!-- 基础语法-->
const fun = ([形参])=>{
// 函数体 (return)
}
fun([实参]);
<!-- 更新状态-->