服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - 编程技术 - 推荐一款前端汉字转拼音组件工具

推荐一款前端汉字转拼音组件工具

2020-12-03 23:23今日头条程序员柳大侠 编程技术

推荐一个前端的汉字转拼音组件 hotoo/pinyin, 支持在 Node 和 Web 浏览器环境运行。

 推荐一款前端汉字转拼音组件工具

推荐一个前端的汉字转拼音组件 hotoo/pinyin, 支持在 Node 和 Web 浏览器环境运行。

github网址:https://github.com/hotoo/pinyin

推荐一款前端汉字转拼音组件工具

特性

  • 根据词组智能匹配最正确的拼音。
  • 支持多音字。
  • 简单的繁体支持。
  • 支持多种不同拼音风格。

使用步骤

安装依赖

npm install pinyin 

新建一个pinyin.js

var pinyin = require("pinyin"); 

 

console.log(pinyin("中心"));    // [ [ 'zhōng' ], [ 'xīn' ] ] 

 

console.log(pinyin("中心", { 

  heteronym: true               // 启用多音字模式 

}));                            // [ [ 'zhōng''zhòng' ], [ 'xīn' ] ] 

 

console.log(pinyin("中心", { 

  heteronym: true,              // 启用多音字模式 

  segment: true                 // 启用分词,以解决多音字问题。 

}));                            // [ [ 'zhōng' ], [ 'xīn' ] ] 

 

console.log(pinyin("我喜欢你", { 

  segment: true,                // 启用分词 

  grouptrue                   // 启用词组 

}));                            // [ [ 'wǒ' ], [ 'xǐhuān' ], [ 'nǐ' ] ] 

 

console.log(pinyin("中心", { 

  style: pinyin.STYLE_INITIALS, // 设置拼音风格 

  heteronym: true 

}));                            // [ [ 'zh' ], [ 'x' ] ] 

通过pinyin方法,传入汉字和配置参数返回拼音二维数组。配置参数可以传入拼音风格、多音字模式(返回汉字的所有拼音)、分词模式(性能慢)。

拼音风格有以下几种:

pinyin.STYLE_NORMAL         //不带声调,如:pin yin 

pinyin.STYLE_TONE               //默认启用,声调风格,如:pīn yīn 

pinyin.STYLE_FIRST_LETTER  //首字母风格,只返回拼音的首字母部分,如:p y 

pinyin.STYLE_INITIALS          //声母风格,只返回各个拼音的声母部分。对于没有声母的汉字,返回空白字符串,如:中国的拼音 zh g 

pinyin.STYLE_TONE2             //声调风格 2,即拼音声调以数字形式在各个拼音之后,用数字 [0-4] 进行表示.如:pin1 yin1 

pinyin.STYLE_TO3NE             //声调风格 3,即拼音声调以数字形式在注音字符之后,用数字 [0-4] 进行表示。如:pi1n yi1n 

运行示例js

运行js前需要你本地安装Node.js环境,执行命令

node pinyin.js 

推荐一款前端汉字转拼音组件工具

node pinyin.js

返回的是汉字的拼音二维数组

如果你想对汉字进行拼音排序,可以调用compare方法对两组汉字排序。

Number pinyin.compare(a, b) 

a汉字大于b汉字时返回 1

a汉字小于b汉字时返回-1

a汉字等于b汉字时返回0

示例如下:

console.log(pinyin.compare('中心','中国'));    //1 

console.log(pinyin.compare('朋克','朋友'));    //-1 

console.log(pinyin.compare('你好','你好'));    //0 

console.log(pinyin.compare('你好','你好啊'));  //-1 

延伸 · 阅读

精彩推荐