首先给大家介绍一个网站: freeCodeCamp.
ES6
变量
var可以重复声明同一个变量
let声明的变量,在同一个作用域内只能声名一次,let作用域是一个代码块。
const声明常量,常量不可改变,一般用大写英文标识const常量。
但是const并非完全不可改变,比如引用的变量数组:
const eg:
const arr = [1,2,3];
arr = [4,5,6];//报错
arr[0]=4;
arr[1]=5;
arr[2]=6;// 不报错
Object.freeze:禁止对对象进行增删改操作
为了确保数据不被改变,JavaScript 提供了一个函数 Object.freeze
。
当一个对象被冻结的时候,你不能再对它的属性再进行增、删、改的操作。 任何试图改变对象的操作都会被阻止,却不会报错。
let obj = {
name:"FreeCodeCamp",
review:"Awesome"
};
Object.freeze(obj);
obj.review = "bad";
obj.newProp = "Test";
console.log(obj);
obj.review 和 obj.newProp 赋值将导致错误,
控制台将显示值 { name: “FreeCodeCamp”, review: “Awesome” }。
函数
使用箭头函数编写简洁的匿名函数
在 JavaScript 里,我们会经常遇到不需要给函数命名的情况,尤其是在需要将一个函数作为参数传给另外一个函数的时候。
这时,我们会创建匿名函数。
因为这些函数不会在其他地方复用,所以我们不需要给它们命名。
这种情况下,我们通常会使用以下语法:
const myFunc = function() {
const myVar = "value";
return myVar;
}
ES6 提供了其他写匿名函数的方式的语法糖。 你可以使用箭头函数:
const myFunc = () => {
const myVar = "value";
return myVar;
}
当不需要函数体,只返回一个值的时候,箭头函数允许你省略 return 关键字和外面的大括号。
这样就可以将一个简单的函数简化成一个单行语句。
const myFunc = () => "value";
这段代码默认会返回字符串 value。
设置函数的默认参数
ES6 里允许给函数传入默认参数,来构建更加灵活的函数。
请看以下代码:
const greeting = (name = "Anonymous") =>