专栏名称: 程序员鱼皮
鹅厂全栈开发,持续分享编程技法和实用项目
目录
相关文章推荐
歸藏的AI工具箱  ·  终于有给设计师用的 Cursor 了 ·  23 小时前  
歸藏的AI工具箱  ·  终于有给设计师用的 Cursor 了 ·  23 小时前  
前端大全  ·  前端行情变了,差别真的挺大。。。 ·  昨天  
前端早读课  ·  【开源】TinyEngine开启新篇章,服务 ... ·  2 天前  
商务河北  ·  经开区“美•强•优”三重奏 ·  3 天前  
51好读  ›  专栏  ›  程序员鱼皮

只有中国人才懂的 6 个前端工具!

程序员鱼皮  · 公众号  · 前端  · 2024-12-02 13:31

主要观点总结

文章介绍了6个只有中国人才懂的前端工具库,包括省市区选择、汉字拼音转换、全能日历、中文数字和阿拉伯数字互转、紫微斗数排盘以及中文分词等。每个工具库都有其特定的应用场景和功能特点,并提供了相应的GitHub链接。

关键观点总结

关键观点1: 省市区选择工具

通过借助UI组件库的Cascader级联选择和行政区划数据,可以实现地址选择组件,数据来自官方的国内行政区划五级数据。

关键观点2: 汉字拼音转换工具库pinyin-pro

pinyin-pro是一个专业的JavaScript汉字拼音转换库,支持拼音、声母、韵母、首字母、音调等转换,具有极致的性能和极高的拼音识别准确率。

关键观点3: 全能日历工具库lunar

lunar支持阳历、阴历、佛历和道历等多种日历,不依赖第三方,支持多种日历间的相互转换,还提供星座、干支、生肖等十二神、黄道日及吉凶等信息。

关键观点4: 中文数字和阿拉伯数字互转工具库nzh

nzh支持阿拉伯数字与中文数字相互转换,包括科学记数法、口语化表达及自定义单位的转换。

关键观点5: 紫微斗数排盘工具库Iztro

Iztro是一个支持多语言、轻量级获取紫微斗数排盘信息的JavaScript开源库,通过输入出生日期、时间、性别等信息,能输出对应的紫微斗数星盘信息。

关键观点6: 中文分词工具库NodeJieba

NodeJieba是结巴中文分词的Node.js版本实现,用于关键词搜索等应用场景,兼具高性能和易用性。


正文

今天来分享 6 个只有中国人才懂的前端工具库,这些工具在特定场景下非常有用!

省市区选择

只需借助 UI 组件库的 Cascader 级联选择 以及 行政区划数据 即可实现地址选择组件。

Administrative-divisions-of-China 项目就提供了国内行政区划(五级:省级、地级、县级、乡级和村级)数据, 数据均来自官方

Github: https://github.com/modood/Administrative-divisions-of-China

汉字拼音转换

pinyin-pro 是一个专业的 JavaScript 汉字拼音转换库,功能丰富、准确率高、性能优异。其主要功能如下:

  • 支持拼音/声母/韵母/首字母/音调/全部信息

  • 支持人名姓氏模式

  • 支持文本和拼音匹配

  • 支持自定义拼音

  • 支持获取带拼音汉字的 HTML 字符串

  • 支持获取汉字的拼音

  • 支持拼音输入转换

  • 极致的性能和极高的拼音识别准确率

import { pinyin } from "pinyin-pro";

// 获取字符串格式拼音
pinyin("汉语拼音"); // 'hàn yǔ pīn yīn'

// 获取数组格式拼音
pinyin("汉语拼音", { type: "array" }); // ["hàn", "yǔ", "pīn", "yīn"]

// 获取不带音调格式拼音
pinyin("汉语拼音", { toneType: "none" }); // "han yu pin yin"

// 获取不带音调数组格式拼音
pinyin("汉语拼音", { toneType: "none", type: "array" }); // ["han", "yu", "pin", "yin"]

// 音调以数字形式显示
pinyin("汉语拼音", { toneType: "num" }); // "han4 yu3 pin1 yin1"

// 自动识别多音字
pinyin("睡着了"); // "shuì zháo le"

Github: https://github.com/zh-lx/pinyin-pro

全能日历

lunar 是一个支持阳历、阴历、佛历和道历的日历工具库,其不依赖第三方,支持阳历、阴历、佛历、道历、儒略日的相互转换,还支持星座、干支、生肖、节气、节日、彭祖百忌、每日宜忌、吉神宜趋、凶煞宜忌、吉神方位、冲煞、纳音、星宿、八字、五行、十神、建除十二值星、青龙名堂等十二神、黄道日及吉凶等。

Github: https://github.com/6tail/lunar-javascript

中文数字和阿拉伯数字互转

nzh 是一个用于阿拉伯数字与中文数字相互转换的工具库,支持科学记数法、口语化表达及自定义单位。

const Nzh = require("nzh");
const nzhcn = Nzh.cn; // 使用简体中文, 另外有 Nzh.hk -- 繁体中文

nzhcn.encodeS(100111); // 转中文小写 >> 十万零一百一十一
nzhcn.encodeB(100111); // 转中文大写 >> 壹拾万零壹佰壹拾壹
nzhcn.encodeS("1.23456789e+21"); // 科学记数法字符串 >> 十二万三千四百五十六万万七千八百九十万亿
nzhcn.toMoney("100111.11"); // 转中文金额 >> 人民币壹拾万零壹佰壹拾壹元壹角壹分

Github: https://github.com/cnwhy/nzh

紫微斗数排盘

Iztro 是一个支持多语言、轻量级获取紫微斗数排盘信息的JavaScript开源库。Iztro通过输入出生日期、时间、性别等信息,能够输出对应的紫微斗数星盘信息。

紫微斗数星盘是古代中国的一种命理学体系,通过排列星曜与宫位来预测和分析个人命运及性格特征。

Github: https://github.com/SylarLong/iztro

中文分词

NodeJieba 是"结巴"中文分词的 Node.js 版本实现, 由CppJieba提供底层分词算法实现, 是兼具高性能和易用性两者的 Node.js 中文分词组件。分词可以用于 关键词搜索 等应用场景。

const nodejieba = require("nodejieba");
const topN = 4;
console.log(nodejieba.extract("升职加薪,当上CEO,走上人生巅峰。", topN));
//[ { word: 'CEO', weight: 11.739204307083542 },
// { word: '升职', weight: 10.8561552143 },
// { word: '加薪', weight: 10.642581114 },
// { word: '巅峰', weight: 9.49395840471 } ]

console.log(nodejieba.textRankExtract("升职加薪,当上CEO,走上人生巅峰。", topN));
//[ { word: '当上', weight: 1 },
// { word: '不用', weight: 0.9898479330698993 },
// { word: '多久', weight: 0.9851260595435759 },
// { word: '加薪', weight: 0.9830464899847804 },
// { word: '升职', weight: 0.9802777682279076 } ]

Github: https://github.com/yanyiwu/nodejieba

👇🏻 点击下方阅读原文,获取鱼皮的编程学习路线、原创项目教程、求职面试宝典、编程交流圈子。

往期推荐

同事老写烂代码,于是我出手了。。。







请到「今天看啥」查看全文