JS实现区分中英文并统计字符个数的方法示例

yizhihongxing

JS实现区分中英文并统计字符个数的方法示例可以分为以下几步:

  1. 获取用户输入的字符串
  2. 使用正则表达式判断字符串中的中英文字符,并将其分类计数
  3. 将中英文字符的计数结果输出

其中,正则表达式是实现该功能的关键。以下是具体实现的示例代码:

1. 获取用户输入的字符串

const str = prompt("请输入一段字符串:");

使用prompt方法获取用户在网页中输入的一段字符串,并将其保存在str变量中。

2. 使用正则表达式判断字符串中的中英文字符,并将其分类计数

let cnCount = 0;
let enCount = 0;
for (let i = 0; i < str.length; i++) {
  const char = str.charAt(i);
  const reg = new RegExp("[\u4e00-\u9fa5]");
  if (reg.test(char)) {
    cnCount++;
  } else {
    enCount++;
  }
}

这段代码中,我们定义了cnCountenCount两个变量来分别计算中文和英文字符的个数,然后使用for循环遍历字符串中的每一个字符。在遍历的过程中,对于每一个字符,我们使用charAt方法将其取出,并使用正则表达式判断该字符是否为中文字符。在正则表达式中,[\u4e00-\u9fa5]表示匹配unicode为4e009fa5的所有字符,也就是中文字符。如果该字符是中文字符,则将cnCount加一;否则将enCount加一。

3. 将中英文字符的计数结果输出

console.log(`中文字符个数: ${cnCount},英文字符个数: ${enCount}`);

最后,我们使用console.log方法将统计结果输出。其中,使用了ES6中的字符串模板语法,可以方便地在字符串中嵌入变量。

以上就是实现统计中英文字符个数的完整攻略。第二个示例代码在第二步中和上面的示例完全一样,只是在第三步中输出的格式略微不同,输出中英文字符的比例。

let cnCount = 0;
let enCount = 0;
for (let i = 0; i < str.length; i++) {
  const char = str.charAt(i);
  const reg = new RegExp("[\u4e00-\u9fa5]");
  if (reg.test(char)) {
    cnCount++;
  } else {
    enCount++;
  }
}
const total = cnCount + enCount;
console.log(`中文字符占比: ${(cnCount / total) * 100}%,英文字符占比: ${(enCount / total) * 100}%`);

这段代码和前面的示例的第二步完全一样,只是在第三步中使用了total变量来计算总字符数,并输出了中英文字符的比例,而不是计数结果。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS实现区分中英文并统计字符个数的方法示例 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • 前端进阶之教你利用javascript存储函数

    那么我们来详细讲解“前端进阶之教你利用javascript存储函数”的完整攻略。 什么是javascript函数? Javascript函数是一种可重复使用的任务或计算机操作。使用函数可以将大块的JS代码封装到可重用的模块,从而可以更加方便地进行重用和维护。下面我们来看具体的实现过程。 javascript如何存储函数? 在Javascript中,可以通过将…

    JavaScript 2023年5月27日
    00
  • 深入理解javascript严格模式(Strict Mode)

    深入理解JavaScript严格模式 JavaScript严格模式(Strict Mode)是ECMAScript 5引入了一种新的执行模式,主要用于消除JavaScript语言的一些不合理、不严谨之处,减少一些怪异行为。 启用严格模式 全局启用严格模式 要想在全局范围启用严格模式,需要在JavaScript源码文件的顶部添加如下代码: "use …

    JavaScript 2023年5月28日
    00
  • JavaScript RegExp 对象用法详解

    JavaScript RegExp 对象用法详解 JavaScript 的正则表达式 (RegExp) 提供了一种强大的文本匹配能力,可以极大地简化对字符串的操作。在本篇文章中,我们将详细介绍 JavaScript RegExp 对象的用法,包括创建 RegExp 对象、访问 RegExp 对象属性、使用 RegExp 对象方法等。 创建 RegExp 对象…

    JavaScript 2023年6月10日
    00
  • javascript高级程序设计(第三版)学习笔记(一) 正则表达式整理

    首先,需要解释一下该学习笔记的主题——正则表达式。 正则表达式 正则表达式,又称为“正则式”、“规则表达式”、“正规表达式”,是一种针对某种模式(字符串)进行匹配的工具。它通常被应用于字符串搜索、替换和拆分等场景。 正则表达式语法 正则表达式有自己独特的语法和规则,以下是一些常见的语法以及它们的意义: /pattern/:表示一个正则表达式模式,将被用于字符…

    JavaScript 2023年5月28日
    00
  • JavaScript中的console.profile()函数详细介绍

    JavaScript中的console.profile()函数详细介绍 什么是console.profile()函数? console.profile() 函数是JavaScript中内置的一个控制台函数,它可以用来分析网站性能,定位瓶颈。当执行此函数时,浏览器会在控制台中打开一个新的性能分析面板,记录执行时间、调用堆栈、内存使用情况等详细信息,从而帮助我们…

    JavaScript 2023年5月28日
    00
  • 浅谈javascript的Array.prototype.slice.call

    接下来我将详细讲解“浅谈JavaScript的Array.prototype.slice.call”的完整攻略。 首先,我们来了解一下Array.prototype.slice.call的含义。 在JavaScript中,Array.prototype.slice.call()是指将一个类数组对象或可遍历对象(如 DOM NodeList对象)转换成一个真正…

    JavaScript 2023年5月27日
    00
  • JavaScript.Encode手动解码技巧

    以下是我准备的“JavaScript.Encode手动解码技巧”的攻略: JavaScript.Encode手动解码技巧 什么是JavaScript.Encode 在 Web 开发中,JavaScript 是一种常用的脚本语言,可以用来实现各种交互效果。JavaScript.Encode 是一种将 JavaScript 代码进行编码的方式,使得代码难以被人识…

    JavaScript 2023年5月19日
    00
  • JavaScript性能优化之函数节流(throttle)与函数去抖(debounce)

    JavaScript性能优化之函数节流与函数去抖 函数节流(throttle)和函数去抖(debounce)都是 JavaScript 中常用的性能优化技巧。它们都是用来解决频繁触发回调函数导致过多计算使页面出现卡顿或资源浪费的问题。 函数节流 throttle 函数节流的基本思路是:在一定时间间隔内,只执行一次函数。通过这种方式,可以减少计算次数,提升性能…

    JavaScript 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部