专栏首页HTML5学堂JavaScript | 获取数组中的单词并统计出现次数

JavaScript | 获取数组中的单词并统计出现次数

HTML5学堂(码匠):如何通过JavaScrip实现数组元素的查找?在一个数组当中,找到所有的单词,并统计每个单词出现的次数。

功能需求

在一个自定义数组当中,包含多个单词,请使用JavaScipt获取数组中的每个单词,并统计出每个单词出现的次数。

功能分析与实现思路

可以借助对象的特性,使用对象属性表示数组中的具体单词,使用对象属性的属性值表示相应单词出现的次数。

完整的代码实现

代码输出结果

相关知识

对象属性的两种表示方法

对于对象来说,可以使用“对象.属性”的方法来表示,也可以使用“对象[属性]”的方法来表示。

for in循环

for-in循环用于遍历对象中的所有属性和属性值。很适用于不确定对象中有什么属性的时候使用。基本语法为:

for(变量 in 对象){ 语句 }

其中随着循环的进行,变量表示对象中的各个属性,而“对象[变量]”则表示对象中属性对应的属性值。

代码解析

1. sort方法,是针对数组进行排序,这个步骤可以省略,不排序也能够直接输出。

2. 通过for循环,检测数组中的每个值是否在obj中存在,如果不存在,则设置这个属性,并将属性值赋值为1,如果当前obj中已存在相应单词,则令属性值+1。

3. 到循环结束,即可获得到所有的单词以及相应单词的个数。

4. 通过for-in循环,遍历并输出对象中的所有属性和属性值。

备注:实现该功能需求的方法有多种,也可以通过其他手段或方法来实现。

本文分享自微信公众号 - HTML5学堂(h5course-com),作者:HTML5学堂(码匠)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-02-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • JavaScript 获取鼠标及元素在页面上的位置

    HTML5学堂:JavaScript获取鼠标的位置,大家会想到clientX/Y等属性,灵活的获取鼠标的位置信息,能够便于我们实现各种复杂的页面交互效果,到底还...

    HTML5学堂
  • img中alt与title辨析

    HTML5学堂:img中alt与title有何不同?本文主要从表现在含义、浏览器中的表现以及对于网站seo优化程度三个方面进行辨析,接下来我们一起来看看。 示例...

    HTML5学堂
  • CSS3-3D相关知识详解—视角以及变形方向

    CSS3-3D相关知识详解—视角以及变形方向 HTML5学堂:视角以及变形方向。HTML5中非常不错的一个变革,便是将特效从二维平面上的变化,推进到了三维立体当...

    HTML5学堂
  • JS基础测试: typeof delete window.name 的返回结果是什么?​

    delete 操作符用于删除对象的某个属性;如果没有指向这个属性的引用,那它最终会被释放。

    舒克
  • CVPR 2019 | STGAN: 人脸高精度属性编辑模型

    classification也要训练的,和auto-encoder一起训练,介样练:

    马上科普尚尚
  • 对象

    方法:对象里面的函数称为方法,方法不需要声明,使用“对象.方法名()”的方式就可以调用,方法用来描述 该对象的行为和功能。

    星辰_大海
  • java基础(三):条件判断,循环,类与对象

    类:我们叫做class。 对象:我们叫做Object, instance(实例)。以后我们说某个类的对象,某个类的实例。是一样的意思。

    Vincent-yuan
  • 深入理解javascript中的继承机制(3)属性复制对象之间的继承深复制原型继承原型继承与属性复制的混合使用

    我们开始换一种思路实现继承,可不可以直接将父对象的属性直接复制给子对象,这样子对象不久也拥有了父对象的属性,相当于继承。

    desperate633
  • 「R」R 的属性和类

    属性描述了对象所代表的内容以及R解释该对象的方式。很多时候两个对象之间的唯一差别就在于它们的属性不同。下表展示了一些重要的属性。很多常见的属性都是针对常见的数值...

    王诗翔呀
  • PHP面向对象基础总结

    近来参加了几场PHP工程师的面试,但是笔试题答得都不理想,回来总结了一下失败的原因,是没看PHP手册。几家公司的PHP基础面试题都可以在PHP手册上找到。哎,...

    用户7657330

扫码关注云+社区

领取腾讯云代金券