旧的 JS 版本以数字命名:ES5 (2009) 和 ES6 (2015)。
从 2016 年开始,版本按年份命名:ECMAScript 2016、2017、2018、2019,...
这些功能相对较新。
较旧的浏览器可能需要替代代码(Polyfill)
ES2021引入了字符串方法replaceAll()
:
这个replaceAll()
方法允许您指定正则表达式而不是要替换的字符串。
如果参数是正则表达式,则必须设置全局标志 (g),否则会抛出 TypeError。
ES2020引入了字符串方法matchAll()。
ES2021 引入了数字分隔符 (_) 以使数字更具可读性:
数字分隔符仅供视觉使用。
数字分隔符可以放置在数字中的任意位置:
数字的开头或结尾不允许使用数字分隔符。
在 JavaScript 中,只有变量可以以 _ 开头。
自 2020 年 1 月起,所有现代浏览器都支持数字分隔符:
Chrome 75 | Edge 79 | Firefox 74 | Safari 13.1 | Opera 67 |
Jun 2019 | Jan 2020 | Oct 2019 | Sep 2019 | Jun 2019 |
ES2022引入数组方法at()
:
获取水果的第三个元素:
const fruits = ["Banana", "Orange", "Apple", "Mango"];
let fruit = fruits.at(2);
亲自试一试 »
获取水果的第三个元素:
const fruits = ["Banana", "Orange", "Apple", "Mango"];
let fruit = fruits[2];
亲自试一试 »
这个at()
方法从数组返回一个索引元素。
这个at()
方法返回相同的[]
。
这个at()
自 2022 年 3 月起,所有现代浏览器都支持该方法:
Chrome 92 | Edge 92 | Firefox 90 | Safari 15.4 | Opera 78 |
Apr 2021 | Jul 2021 | Jul 2021 | Mar 2022 | Aug 2021 |
许多语言允许negative bracket indexing
像 [-1] 一样从对象/数组/字符串的末尾访问元素。
这在 JavaScript 中是不可能的,因为 [] 用于访问数组和对象。 obj[-1] 指的是键 -1 的值,而不是对象的最后一个属性。
这个at()
ES2022中引入了方法来解决这个问题。
ES2022引入了字符串方法at()
:
获取名字的第三个字母:
const name = "91xjr";
let letter = name.at(2);
亲自试一试 »
获取名字的第三个字母:
const name = "91xjr";
let letter = name[2];
亲自试一试 »
这个at()
方法从字符串返回索引元素。
这个at()
方法返回相同的[]
。
这个at()
自 2022 年 3 月起,所有现代浏览器都支持该方法:
Chrome 92 | Edge 92 | Firefox 90 | Safari 15.4 | Opera 78 |
Apr 2021 | Jul 2021 | Jul 2021 | Mar 2022 | Aug 2021 |
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!