Es新规范-总结(Es5-Es10)
Es新规范之我的es学习笔记
变量:let
和var
1.在循环中使用的变量.
使用 var 时重新声明了循环之外的变量(循环内外的作用域不同,相同变量的值也不同).
使用 let 并没有重新声明循环外的变量 ( 如果在循环中用 let 声明了变量 i,那么只有在循环内,变量 i 才是可见的)
2.在函数内声明变量时,使用 var 和 let 很相似。
3.在 HTML 中,全局作用域是 window 对象。通过 var 关键词定义的全局变量属于 window 对象:可使用 window.carName;通过 let 关键词定义的全局变量不属于 window 对象;
4.允许在程序的任何位置使用 var 重新声明 JavaScript 变量;
在相同的作用域,或在相同的块中,通过 let 重新声明一个 var 变量是不允许的,通过 let 重新声明一个 let 变量是不允许的;
5.通过 var 声明的变量会提升到顶端,可在声明语句之前使用变量;而let不会提升到顶端;
常量 const
6.const
变量必须在声明时赋值.const定义了对值的常量引用,而非常量。因此,我们不能更改常量原始值,但我们可以更改常量对象的属性。
1.将一个原始值赋给常量const PI = 3.141592653589793
后,就不能改变原始值;
2.常量为对象时,可以更改(数组);
7.通过 const 定义的变量不会被提升到顶端。
当使用常量 const 声明时,使用大写变量,如:CAPITAL_CASING
8.Number.isSafeInteger()
方法
安全整数是可以精确表示为双精度数的整数。安全整数指的是从 -(253 - 1) 到 +(253 - 1) 的所有整数。
函数操作
- 设置默认参数
- 延展参数转化
- 箭头函数
9.设置默认参数: ES6 允许函数参数具有默认值。
function myFunction(x, y = 10) {
// y is 10 if not passed or undefined
return x + y;
}
myFunction(5); // 将返回 15
myFunction(6,1);// 将返回 7
10.箭头函数(Arrow Function)
.箭头函数注意点:
1)多个参数要用()包起来,函数体有多条语句需要用{}包起来,有返回值时,需要添加return;
2)箭头函数根本没有自己的this,所以内部的this就是外层代码块的this。 正是因为它没有this,从而避免了this指向的问题;
3)箭头函数中没有arguments对象。
// ES5函数
var x = function(x, y) {
return x * y;
}
// ES6箭头函数
const x = (x, y) => x * y;
// ES6 如果函数是单个语句,则只能省略 return 关键字和花括号。因此,保留它们可能是一个好习惯:
const x = (x, y) =>