随着 JavaScript 的不断发展,ES12(也称为 ECMAScript 2021)已经发布,并引入了一些新的方法属性。这些新的方法属性可以帮助我们更轻松地编写代码,提高代码的效率和可读性。本文将介绍 ES12 中的方法属性并给出详细的示例代码。
replaceAll() 方法
replaceAll() 方法可以用来替换字符串中的所有匹配项。它是 String 对象的新方法,它接受两个参数:要替换的字符串和替换成的字符串。下面是一个示例:
const str = "hello world"; const newStr = str.replaceAll("o", "a"); console.log(newStr); // 输出 "hella warld"
Promise.allSettled() 方法
Promise.allSettled() 方法可以用来并行处理多个 Promise 对象。它接受一个 Promise 对象数组,并返回一个新的 Promise 对象。这个新的 Promise 对象在所有的 Promise 对象都已经 settled(即 fulfilled 或 rejected)之后才会 fulfilled。下面是一个示例:
const promise1 = Promise.resolve(1); const promise2 = Promise.reject("error"); const promise3 = Promise.resolve(3); Promise.allSettled([promise1, promise2, promise3]) .then(results => console.log(results)) .catch(error => console.log(error)); // 输出 [{ status: 'fulfilled', value: 1 }, { status: 'rejected', reason: 'error' }, { status: 'fulfilled', value: 3 }]
数组的新方法
ES12 还引入了一些新的数组方法:
includes() 方法
includes() 方法用于判断一个数组是否包含某个值。它返回一个布尔值。下面是一个示例:
const arr = [1, 2, 3]; console.log(arr.includes(2)); // 输出 true console.log(arr.includes(4)); // 输出 false
sort() 方法
sort() 方法可以用于对数组进行排序。它接受一个可选的比较函数作为参数。下面是一个示例:
const arr = [3, 1, 2]; arr.sort((a, b) => a - b); console.log(arr); // 输出 [1, 2, 3]
flat() 方法
flat() 方法可以用于将多维数组转换为一维数组。它接受一个可选的参数,用于指定要展开的层数。下面是一个示例:
const arr = [1, [2, [3]]]; const flatArr = arr.flat(2); console.log(flatArr); // 输出 [1, 2, 3]
总结
ES12 中引入了一些新的方法属性,包括 String 对象的 replaceAll() 方法、Promise 对象的 allSettled() 方法以及数组的 includes()、sort() 和 flat() 方法。这些新的方法属性可以帮助我们更轻松地编写代码,提高代码的效率和可读性。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/6561bccfd2f5e1655dbc6916