在 ES9 中,也就是 ES2017 版本中,新增了一些语言特性和操作符,其中包括了一些非常方便实用的操作符。下面就让我们来了解一下这些新增操作符的使用方法和注意事项。
Array.prototype.includes
在 ES9 中,我们可以借助 Array.prototype.includes
方法来检测数组中是否包含某个元素。这个方法的参数是一个值,用于检测数组中是否包含该值,返回值为布尔类型。使用该方法时,不需要再使用 indexOf 方法了。
const arr = [1, 2, 3, 4, 5]; console.log(arr.includes(2)); // true console.log(arr.includes('2')); // false
指数运算符
指数运算符 **
是 ES9 中引入的一种运算符。这个运算符可以将一个数值的值作为底数,带一个指数的值作为幂次方,返回底数的幂次方结果。
console.log(2 ** 3); // 8 console.log(10 ** -1); // 0.1
async/await
在 ES9 中,我们可以使用 async/await 来更方便地处理异步代码请求。async/await 是一个语法糖,可以让异步代码看起来像同步代码一样简单易懂。使用该方法可以解决在回调函数中嵌套过多的问题。
async function foo() { const result1 = await fetchData1(); const result2 = await fetchData2(result1); const result3 = await fetchData3(result2); return result3; } foo().then((result) => console.log(result)).catch((err) => console.log(err));
String.prototype.padStart 和 String.prototype.padEnd
在 ES9 中,我们可以使用 String.prototype.padStart
和 String.prototype.padEnd
来为字符串添加填充字符,这些字符可以是任何一个单字符的字符串。
console.log("abc".padStart(5, "x")); // "xxabc" console.log("abc".padEnd(5, "x")); // "abcxx"
Object.values 和 Object.entries
在 ES9 中,我们可以使用 Object.values
和 Object.entries
分别返回对象的所有值和键值对数组。这个特性也是非常实用的。
const obj = { a: 1, b: 2, c: 3 }; console.log(Object.values(obj)); // [1, 2, 3] console.log(Object.entries(obj)); // [["a", 1], ["b", 2], ["c", 3]]
总结
以上就是 ES9 中新增的操作符支持的新特性和使用方法的详细介绍。这些操作符虽然只是新增了一些小的语言特性,但它们在编写代码时会非常方便实用。对于开发者们来说,学习和掌握这些操作符是非常有意义的。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/65bb1133add4f0e0ff3aad94