手册
目录
收藏427
分享
阅读599
更新时间2025-08-07
ECMAScript 6 也称为 ES6 和 ECMAScript 2015。
一些人把它称作 JavaScript 6。
本章介绍 ES6 中的一些新特性。
Safari 10 和 Edge 14 是首先完全支持 ES6 的浏览器:
| Chrome 58 | Edge 14 | Firefox 54 | Safari 10 | Opera 55 |
| Jan 2017 | Aug 2016 | Mar 2017 | Jul 2016 | Aug 2018 |
let 语句允许您使用块作用域声明变量。
var x = 10;
// Here x is 10
{
let x = 2;
// Here x is 2
}
// Here x is 10
运行实例 »点击 "运行实例" 按钮查看在线实例
const 语句允许您声明常量(具有常量值的 JavaScript 变量)。
常量类似于 let 变量,但不能更改值。
var x = 10;
// Here x is 10
{
const x = 2;
// Here x is 2
}
// Here x is 10
运行实例 »点击 "运行实例" 按钮查看在线实例
请在我们的 JavaScript Let / Const 章节中阅读更多关于 let 和 const 的内容。
取幂运算符(**)将第一个操作数提升到第二个操作数的幂。
var x = 5; var z = x ** 2; // 结果是 25运行实例 »
点击 "运行实例" 按钮查看在线实例
x ** y 的结果与 Math.pow(x,y) 相同:
var x = 5; var z = Math.pow(x,2); // 结果是 25运行实例 »
点击 "运行实例" 按钮查看在线实例
ES6 允许函数参数具有默认值。
function myFunction(x, y = 10) {
// y is 10 if not passed or undefined
return x + y;
}
myFunction(5); // 将返回 15
运行实例 »点击 "运行实例" 按钮查看在线实例
find() 方法返回通过测试函数的第一个数组元素的值。
此例查找(返回)第一个大于 18 的元素(的值):
var numbers = [4, 9, 16, 25, 29];
var first = numbers.find(myFunction);
function myFunction(value, index, array) {
return value > 18;
}
运行实例 »点击 "运行实例" 按钮查看在线实例
请注意此函数接受 3 个参数:
findIndex() 方法返回通过测试函数的第一个数组元素的索引。
此例确定大于 18 的第一个元素的索引:
var numbers = [4, 9, 16, 25, 29];
var first = numbers.findIndex(myFunction);
function myFunction(value, index, array) {
return value > 18;
}
运行实例 »点击 "运行实例" 按钮查看在线实例
请注意此函数接受 3 个参数:
ES6 将以下属性添加到 Number 对象:
var x = Number.EPSILON;运行实例 »
点击 "运行实例" 按钮查看在线实例
var x = Number.MIN_SAFE_INTEGER;运行实例 »
点击 "运行实例" 按钮查看在线实例
var x = Number.MAX_SAFE_INTEGER;运行实例 »
点击 "运行实例" 按钮查看在线实例
ES6 为 Number 对象添加了 2 个新方法:
如果参数是整数,则 Number.isInteger() 方法返回 true。
Number.isInteger(10); // 返回 true Number.isInteger(10.5); // 返回 false运行实例 »
点击 "运行实例" 按钮查看在线实例
安全整数是可以精确表示为双精度数的整数。
如果参数是安全整数,则 Number.isSafeInteger() 方法返回 true。
Number.isSafeInteger(10); // 返回 true Number.isSafeInteger(12345678901234567890); // 返回 false运行实例 »
点击 "运行实例" 按钮查看在线实例
安全整数指的是从 -(253 - 1) 到 +(253 - 1) 的所有整数。
这是安全的:9007199254740991。这是不安全的:9007199254740992。
ES6 还增加了 2 个新的全局数字方法:
如果参数为 Infinity 或 NaN,则全局 isFinite() 方法返回 false。
否则返回 true:
isFinite(10/0); // 返回 false isFinite(10/1); // 返回 true运行实例 »
点击 "运行实例" 按钮查看在线实例
如果参数是 NaN,则全局 isNaN() 方法返回 true。否则返回 false:
isNaN("Hello"); // 返回 true
运行实例 »点击 "运行实例" 按钮查看在线实例
箭头函数允许使用简短的语法来编写函数表达式。
您不需要 function 关键字、return 关键字以及花括号。
// ES5
var x = function(x, y) {
return x * y;
}
// ES6
const x = (x, y) => x * y;
运行实例 »点击 "运行实例" 按钮查看在线实例
箭头功能没有自己的 this。它们不适合定义对象方法。
箭头功能未被提升。它们必须在使用前进行定义。
使用 const 比使用 var 更安全,因为函数表达式始终是常量值。
如果函数是单个语句,则只能省略 return 关键字和花括号。因此,保留它们可能是一个好习惯:
const x = (x, y) => { return x * y };
运行实例 »点击 "运行实例" 按钮查看在线实例
相关
视频
RELATED VIDEOS
科技资讯
1
2
3
4
5
6
7
8
9
精选课程
共5课时
17.2万人学习
共49课时
77万人学习
共29课时
61.7万人学习
共25课时
39.3万人学习
共43课时
70.9万人学习
共25课时
61.6万人学习
共22课时
23万人学习
共28课时
33.9万人学习
共89课时
125万人学习