原文链接:
作者:Enmanuel Durán
如有翻译不准,请多指正。
JavaScript是一种快速发展的语言,因此,我们很难挖掘出其所有特性和功能。在这篇短文中,我们将探讨一些JavaScript中您可能不知道的功能。
1、获取查询字符串参数
URLSearchParams是一个允许我们查询字符串参数的接口,它已经存在了几年,但在开发人员之间并不那么流行,让我们看看如何使用它:
2、使用Set对象创建唯一的元素列表
在JS中创建唯一列表是一项常见的任务,这通常是应用filters或for循环来实现的。但是还有另一种方法,可以利用Set对象来实现这一点。
我们将原始值数组传递给Set对象,它可以创建一个唯一值的集合,然后使用展开操作符语法和数组文本将其转换为列表。
3、将原始值列表转换为其他类型
有时,来自DOM的端点或被处理过的数据不能反馈给我们需要的数值,在处理数据集属性时尤其如此。假设我们有以下列表:
我们希望执行数组中所有元素的总和,但如果你在JavaScript中“sum”两个字符串,就会像将它们连接起来一样。
通常,为了解决这个问题,我们会利用函数,但还有另一种方法;我们可以将数组中的元素转换为我们需要的原始类型:
现在castedList就会包含正确的值。
4、扁平化
随着Redux等单页应用程序体系结构的兴起以及前端数据规范化等概念变得越来越流行,这种"数据规范化"趋势意味着将元素的所有ID列在同一级别。
假设我们有以下列表,并且我们想要将其扁平化:
这样,就搞定了
5、使用Object.freeze避免对象突变
在谈论函数式代码时,我们被问到最多的一件事就是如何阻止对象突变,答案是唯一的,“Object.freeze” ,防止对象被更改:
6、使用Object.seal创建受控对象
执行相同的操作,但它允许我们更改已在对象中定义的属性的值,这将使我们能够控制在对象中声明的属性,但不能更改定义:
你还知道任何其他可能少有人知但非常有用的JS功能吗?可以给小渡留言哦~