推薦一個前端的漢字轉拼音組件 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, // 啟用分詞
group: true // 啟用詞組
})); // [ [ '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