文章目录
let
声明变量
let a;
let b,c;
let d = 1;
let e =11, f = 'nihao', g = [];
变量不能重复声明
let name = '朱一龙';
let name = '张新成';
控制台会报错:
块级作用域
{
let boy = '朱一龙';
}
console.log(boy);
控制台会报错:
不存在变量提升
console.log(boys);
let boys = '朱一龙yyds!!!';
不影响作用域链
{
let student = '小明';
function fn(){
console.log(student);
}
fn();
}
const
声明常量
1一定要赋初始值
2一般常量使用大写
const STUDENT = '小红';
常量值不能修改
const STUDENT = '小红';
STUDENT = '小黄';
控制台会报错:
如果是对数组和对象的元素进行修改,不算是对常量的修改,控制台也不会报错
const STUDENTS = ['小红','小黄','小蓝','小绿'];
STUDENTS.unshift('小紫');
console.log(STUDENTS);
箭头函数
函数
let fn = function(a,b){
retrun a+b;
}
箭头函数 =>
ES6里允许使用箭头 => 定义函数
let fn = (a,b) => {
retrun a+b;
}
不能构造实例化对象
let Person = (name, age) => {
this.name = name;
this.age = age;
}
let me = new Person('xiao',30);
console.log(me);
控制台会报错:
不能使用 arguments
let fn = () => {
console.log(arguments);
}
fn();
控制台会报错:
箭头函数的简写
当只有一个形参时,省略小括号
let add = c => {
return c + c;
}
console.log(add(9));
控制台:18
当代码体只有一条语句的时,省略花括号,此时 return 必须省略且语句的执行结果就是函数的返回值
let pow = n => {
return n * n
}
console.log(pow(8));
//省略花括号后
let pow = n => n * n;
console.log(pow(8));