ES2019 是 ECMAScript 的第 10 个版本,也叫做 ES10。本篇文章将为你介绍 ES2019 中的一些重要特性和使用方法,希望能对你的前端开发有所帮助。
Object.fromEntries()
Object.fromEntries()
方法可以把一个键值对数组转换成一个对象。
const entries = [ ['foo', 'bar'], ['baz', 42] ]; const obj = Object.fromEntries(entries); console.log(obj); // {foo: "bar", baz: 42}
Array.prototype.flat()
Array.prototype.flat()
方法可以把嵌套的数组展开成一个一维数组,并且可以指定展开的深度。
const arr1 = [1, 2, [3, 4]]; console.log(arr1.flat()); // [1, 2, 3, 4] const arr2 = [1, 2, [3, [4, 5]]]; console.log(arr2.flat(2)); // [1, 2, 3, 4, 5]
String.prototype.trimStart() 和 String.prototype.trimEnd()
String.prototype.trimStart()
和 String.prototype.trimEnd()
方法可以分别去掉字符串开头和结尾的空白字符。
const str = ' hello world '; console.log(str.trimStart()); // 'hello world ' console.log(str.trimEnd()); // ' hello world'
optional catch binding
在 ES2019 中,try catch
中的 catch
语句可以省略掉异常对象,只保留异常类型信息。
try { // some code } catch { // handle the error }
Function.prototype.toString()
在 ES2019 中,Function.prototype.toString()
方法现在可以返回原始代码,包括注释和格式化。
function foo() { /* an example */ return 'bar'; } console.log(foo.toString()); // "function foo() {\n/* an\n example */\n return 'bar';\n}"
总结
以上就是 ES2019 的一些重要特性和使用方法。学习这些特性可以使你的代码更简洁、更易读,提升你的编写效率。但需要注意的是,这些特性在一些旧版浏览器中可能不被支持,需要使用 polyfill 或者新版浏览器来兼容。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6484173d48841e9894344b1c