千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > 如何使用JavaScript创建一个简单的单词解扰器

如何使用JavaScript创建一个简单的单词解扰器

来源:千锋教育
发布人:syq
时间: 2022-09-22 13:42:08 1663825328

  假设你被赋予了一长串的字母,看起来像是一个混乱的单词,你被要求解开它,你会如何解开这个词?今天,我将向您展示如何构建一个函数,只要该单词存在于我们的字典中,它将帮助您解密任何单词。

11

  开始

  我们需要通过安装一个非常好的字典来设置我们的项目,该字典将用于过滤单词。

  在本地服务器上,

  安装 npm 包“英语单词数组”

12

  构建我们的功能

  现在我们已经安装了字典,我们需要构建一个函数来帮助我们利用字典中的单词来解密单词。

  此函数将只有一个参数,即要解密的单词。

13

  导入我们的词典

  现在我们需要将字典导入到函数中,以帮助我们根据逻辑过滤单词。

14

  如果开发环境中不允许使用该语句,则必须导入字典并将其作为模块使用。require

  通过字典过滤

  这是我们函数中最重要的部分。在本节中,我将编写非常简单的逻辑来过滤字典并返回我们正在寻找的单词。

  我将在字典上使用,第一步是检查我们尝试解密的单词的长度是否等于字典中当前项目的长度。这将为我们节省大量的时间和内存,并使我们的逻辑更加整洁。Array.filter()

15

  处理重复发生

  因为我不知道你试图解开的词;

  我将检索字典中的当前项目

  使用方法将其转换为数组split()

  遍历数组

  然后将每个字母的重复出现次数存储在变量中reOccurence1

  我将对提供的加扰单词执行相同的操作,但在不同的变量中。reOccurence2

16

  分解它数。

  只需查看对象,您就会注意到它们是相等的,这意味着我们找到了一个与加扰字母匹配的单词。

  解开单词

  在了解了如何存储和处理重复发生之后,我们现在必须遍历第一个对象并检查字母的重复发生次数是否与另一个对象相同。

  为了让你理解上面的代码,举个例子,字典中有一个名字叫“simon”的单词,你正试图解开这个词“mnios”。

  如果我们的函数应该执行到重复出现部分,我们将恰好有这两个对象,其中包含每个字母和它们重复的次数。

17

  如果它们是相同的,那么毫无疑问,字典中的当前项目就是我们正在寻找的单词。

  我将创建一个变量作为我们的计数器。在循环遍历对象时找到的每个匹配项上,此计数器都会增加。

18

  现在,如果计数器等于数组中的键数,我们将返回字典中的当前项,因为这是我们正在寻找的单词。

  这是完整的代码

19

  测试我们的功能

  假设我有这些字母“izrbera”,我想解开它。这就是我调用函数的方式。

20

  这是结果

  奇怪

  火盆

21

  此函数返回 包含与加扰字母匹配的单词的 ,如果未找到单词,则返回空。array array

tags:
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT