简介
npm 包 word-frequency 是一个能够统计一篇文本中每个单词出现频率的 JavaScript 库。该库不依赖于任何第三方库,可以在浏览器和 Node.js 环境下使用。本教程将通过一个实例演示如何安装和使用该库。
安装
使用 npm 进行安装:
npm install word-frequency
使用
在 Node.js 环境下使用:
const wordFrequency = require('word-frequency'); const text = 'hello world, hello npm, world'; const result = wordFrequency.getFrequency(text); console.log(result);
在浏览器环境下使用:
<script src="https://unpkg.com/word-frequency"></script> <script> const text = 'hello world, hello npm, world'; const result = wordFrequency.getFrequency(text); console.log(result); </script>
getFrequency 方法接受一个字符串参数,返回一个对象,对象的属性是单词,值是单词出现的次数。示例代码输出的结果为:
{ hello: 2, world: 2, npm: 1 }
深入学习
自定义分隔符
默认情况下,word-frequency 使用空格、逗号、句号、感叹号、问号、冒号等符号作为单词之间的分隔符。如果需要自定义分隔符,可以在调用 getFrequency 方法时传入第二个参数,例如:
const text = 'hello,world!hello?npm;world'; const result = wordFrequency.getFrequency(text, /[,!?\-;]+/); console.log(result);
输出结果为:
{ hello: 2, world: 2, npm: 1 }
排序结果
如果需要按照单词出现的次数排序结果,可以使用 sort 方法:
const text = 'hello world, hello npm, world'; const result = wordFrequency.getFrequency(text); const sortedResult = Object.entries(result).sort((a, b) => b[1] - a[1]); console.log(sortedResult);
输出结果为:
[ [ 'hello', 2 ], [ 'world', 2 ], [ 'npm', 1 ] ]
过滤单词
如果需要过滤出现次数小于某个值的单词,可以使用 filter 方法:
const text = 'hello world, hello npm, world'; const result = wordFrequency.getFrequency(text); const filteredResult = Object.entries(result).filter(item => item[1] > 1); console.log(filteredResult);
输出结果为:
[ [ 'hello', 2 ], [ 'world', 2 ] ]
总结
npm 包 word-frequency 是一个方便统计文本中每个单词出现频率的库,不仅使用方便,而且还提供了一些深入学习的方法,方便用户进行更多的操作。使用该库可以提高开发效率,同时也可以帮助用户更好的理解 JavaScript 语言。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671138dd3466f61ffe51f