首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在javascript字符串中获取字形字符数?

在JavaScript字符串中获取字形字符数,可以使用charCodeAt()方法获取字符的Unicode编码,然后使用charCodeAt()方法获取字形字符的Unicode编码,最后使用String.fromCharCode()方法将字形字符的Unicode编码转换为字形字符。具体实现如下:

代码语言:javascript
复制
function getFontCharCount(str) {
  let charCount = 0;
  let fontCharCount = 0;
  for (let i = 0; i < str.length; i++) {
    const charCode = str.charCodeAt(i);
    if (charCode >= 12288 && charCode <= 12351) {
      fontCharCount += 1;
    }
    charCount += 1;
  }
  return charCount + fontCharCount;
}

// 示例
const str = "你好,世界!";
console.log(getFontCharCount(str)); // 输出:10

该函数遍历字符串中的每个字符,如果字符是字形字符,则将字形字符的数量加1,然后将字符的数量加1。最后返回字符数量和字形字符数量的和。在示例中,函数返回10,因为字符串中有2个字形字符("你"和"好")和8个普通字符。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

前端 JavaScript 获取字符串重复次数最多的字符

[发散思维] 题目 假设有这么一道题目:请获取字符串 "bianchengsanmei,xuexiyouqudezhishi,jieshiyouqudepengyou,suzaoyouqudelinghun...重复次数最多的字符及其重复次数。 今天我们就来解一下这道题。 分析 这种题目的解法比较开放,实现手段也可能多种多样,其中的区别在于代码的运行性能有高有低(时间复杂度和空间复杂度不同)。...在这里需要注意的只有一点:符合最大次数的字符可能不止一个。 使用对象 解题思路: 遍历字符串,以各个字符为 key,重复次数为 value,存入一个对象。 遍历对象,得到 value 的最大值。...数组&指针 解题思路: 将字符串转为数组并排序,使重复字符排在一起。 使用指针思想,得到最大重复次数和对应的字符数组。 输出结果。...平常的工作学习,我们要有意识地培养自己的发散性思维,从多角度去看待问题,你可能会发现不一样的风景哦! 希望能够对大家有所启发哦! ~ ~ 本文完,感谢阅读!

1.4K10

5 种 JavaScript 获取字符串第一个字符的方法

前端Q 我是winty,专注分享前端知识和各类前端资源,乐于分享各种有趣的事,关注我,一起做个有趣的人~ 本文中,我们将研究多种方法来轻松获取 JavaScript 字符串的第一个字符。...1. charAt() 方法 要获取字符串的第一个字符,我们可以字符串上调用 charAt() ,将 0 作为参数传递。例如,str.charAt(0) 返回 str 的第一个字符。...JavaScript 返回 undefined。...索引 0 和 1 之间的子字符串是仅包含第一个字符串字符的子字符串。 笔记 slice() 和 substring() 方法我们的用例的工作方式类似,但并非总是如此。...(-3); console.log(char1); // u console.log(char2); // '' (empty string) 写在最后 这5种方式虽然都可以实现从JavaScript获取字符串第一个字符串的方法

3.1K20
  • JavaScript 的模板字符串

    模板字符串是可以使用内嵌表达式的字符串,不少高级语言中都有这一特性,如 Python、Kotlin,JavaScript ES5 规范中加入了这一特性。...☕ 语法 `text` `lin1 lin2` `text ${expr}` tag `text ${expr}` 详解 JavaScript 的模板字符串使用反引号来包裹字符串内容而不是单引号或双引号...转义 因为模板字符串使用反引号来包裹字符串内容,所以模板字符串内部使用反引号时需要转义,如下: `\`` === '`' // true 多行字符串 如果使用模板字符串,任何被包裹在两个反引号之间的字符都会被认为是有效的字符串内容...`line1 line2` //等价于 'line1\n' + 'line2' 内嵌表达式 使用模板字符串的最大优势在于不必再使用繁琐的字符串连接操作来连接普通字符串与表达式,而是可以直接在字符串内部写表达式...原始字符串 标签函数的第一个参数,存在一个特殊的属性 raw ,我们可以通过它来访问模板字符串的原始字符串,而不经过特殊字符的替换。

    1.4K20

    golang 获取字符串个数

    golang 获取字符串个数 golang 不能直接用 len 函数来统计字符串长度,查看了下源码发现字符串是以 UTF-8 为格式存储的,说明 len 函数是取得包含 byte 的个数 //...32 228 184 150 231 149 140] 既然是以 byte 存储的,那自然就想到了取 byte 的长度 - bytes.Count() - strings.Count() - 将字符串转换为...main import ( "bytes" "fmt" "strings" "testing" "unicode/utf8" ) /\* ...golang 不能直接用 len 函数来统计字符串长度,查看了下源码发现字符串是以 UTF-8 为格式存储的,说明 len 函数是取得包含 byte 的个数 \*/ func main()...golang ldea配置我没有看到 benchamark配置,总说包不对,命令行输入 go test stringCount\_test.go -bench ".\*" 得到以下结果 Benchmark1

    1.3K81

    golang 获取字符串个数

    golang 获取字符串个数 golang 不能直接用 len 函数来统计字符串长度,查看了下源码发现字符串是以 UTF-8 为格式存储的,说明 len 函数是取得包含 byte 的个数 /...32 228 184 150 231 149 140] 既然是以 byte 存储的,那自然就想到了取 byte 的长度 - bytes.Count() - strings.Count() - 将字符串转换为...golang 不能直接用 len 函数来统计字符串长度,查看了下源码发现字符串是以 UTF-8 为格式存储的,说明 len 函数是取得包含 byte 的个数 */ func main() {...b.N; i++ { f3(s) } } func Benchmark4(b *testing.B) { for i := 0; i < b.N; i++ { f4(s) } } ...golang ldea配置我没有看到 benchamark配置,总说包不对,命令行输入 go test stringCount_test.go -bench ".*" 得到以下结果 Benchmark1

    1.9K20

    JavaScript转义字符串的引号

    定义一个字符串必须要用单引号或双引号来包裹它。 那么当你的字符串里面包含引号 " 或者 ' 时该怎么办呢? JavaScript ,可以通过引号前面使用反斜杠(\)来转义引号。..."; 有了转义符号,JavaScript 就知道这个单引号或双引号并不是字符串的结尾,而是字符串内的字符。...JavaScript 字符串可以使用开始和结束都是同类型的单引号或双引号表示。 与其他一些编程语言不同的是,单引号和双引号的功能在 JavaScript 是相同的。...常见的场景比如在字符串包含对话的句子需要用引号包裹。 另外比如在一个包含有  标签的字符串,标签的属性值需要用引号包裹。...记住,一个字符串开头和结尾处有相同的引号。 要知道,字符串开头和结尾都有相同的引号,如果在中间使用了相同的引号,字符串会提前中止并抛出错误。

    5.5K30

    字符串删除特定的字符

    首先我们考虑如何在字符串删除一个字符。由于字符串的内存分配方式是连续分配的。我们从字符串当中删除一个字符,需要把后面所有的字符往前移动一个字节的位置。...具体实现,我们可以定义两个指针(pFast和pSlow),初始的时候都指向第一字符的起始位置。当pFast指向的字符是需要删除的字符,则pFast直接跳过,指向下一个字符。...这样,前面被pFast跳过的字符相当于被删除了。用这种方法,整个删除O(n)时间内就可以完成。 接下来我们考虑如何在一个字符串查找一个字符。当然,最简单的办法就是从头到尾扫描整个字符串。...然后对于字符串每一个字符,把它的ASCII码映射成索引,把数组该索引对应的元素设为1。...这个时候,要查找一个字符就变得很快了:根据这个字符的ASCII码,在数组对应的下标找到该元素,如果为0,表示字符串没有该字符,否则字符串包含该字符。此时,查找一个字符的时间复杂度是O(1)。

    8.9K90

    Python 程序:查找字符串的单词和字符

    如何计算 python 字符串的单词和字符? 在这个字符串 python 程序,我们需要计算一个字符串字符和单词数。...让我们检查一个例子“我爱我的国家”在这个字符串,我们的字数为 4,字符为 17。 为了解决这个 python 问题,初始化两个变量:计算单词和计算字符。每当在字符串中发现空格时,字计数器就会递增。...然后我们打开一个for loop直到字符串的长度,每次循环迭代都会增加字符,遇到字符串中有空格的时候字数也会增加。最后,打印字数和字符。...算法 步骤 1: 接受来自用户的字符串,并使用 python 的输入法将其保存到一个变量。 步骤 2: 初始化字数和字符两个变量。...第三步:打开一个for loop直到字符串的长度取字符串的每个字符, 步骤 4: 每次循环迭代增加字符。 步骤 5: 使用if条件检查字符是否为空格。如果是这样,递增字计数器。

    22630

    JavaScript】内置对象 - 字符串对象 ④ ( 根据索引位置返回字符串字符 | 代码示例 )

    文章目录 一、根据索引位置返回字符串字符 1、charAt 函数获取字符 2、charCodeAt 函数获取字符 ASCII 码 3、数组下标获取字符 String 字符串对象参考文档 : https...://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String 一、根据索引位置返回字符串字符...根据索引位置返回字符 : 给定一个 字符串 的索引值 , 获取 字符串 的该 索引的对应字符 ; charAt(index) 函数 : 获取 index 索引对应的 字符 ; charCodeAt(...() 函数 是 String 字符串对象的方法 , 用于返回指定位置的字符 ; 参考文档 : https://developer.mozilla.org/zh-CN/docs/Web/JavaScript...ASCII 码 charCodeAt 函数 用于 获取 字符串 指定索引位置的 字符 ASCII 码 , 函数原型如下 : charCodeAt(index) index 参数 : 字符串的索引值

    9710
    领券