gedoor / legado

Legado 3.0 Book Reader with powerful controls & full functions❤️阅读3.0, 阅读是一款可以自定义来源阅读网络内容的工具,为广大网络文学爱好者提供一种方便、快捷舒适的试读体验。
GNU General Public License v3.0
29.14k stars 3.86k forks source link

请求增加一个阿拉伯数字转中文数字的方法,能在目录 > 格式化规则中调用 #4014

Closed sky-bbk closed 2 months ago

sky-bbk commented 3 months ago

确认 / Assignments

功能描述 / Features

请求增加一个阿拉伯数字转中文数字的方法

期望实现方式 / How to implement

能在目录 > 格式化规则中调用

附加信息 / Additions

No response

效果演示 / Demo

No response

sky-bbk commented 3 months ago

目前可以用js代码实现

function SectionToChinese(n){for(var r="",h="",c=0,e=!0;n>0;){var i=n%10;0===i?e||(e=!0,h=chnNumChar[i]+h):(e=!1,r=chnNumChar[i],r+=chnUnitChar[c],h=r+h),c++,n=Math.floor(n/10)}return 0===h.indexOf("\u4e00\u5341")&&(h=h.slice(1)),h}function n2c(n){var r=0,h="",c="",e=!1;if(0===n)return chnNumChar[0];for(;n>0;){var i=n%1e4;e&&(c=chnNumChar[0]+c),h=SectionToChinese(i),0!==i&&(h+=chnUnitSection[r]),c=h+c,e=1e3>i&&i>0,n=Math.floor(n/1e4),r++}return c}var chnNumChar=["\u96f6","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d","\u4e03","\u516b","\u4e5d"],chnUnitSection=["","\u4e07","\u4ebf"],chnUnitChar=["","\u5341","\u767e","\u5343"];
550-q commented 3 months ago

目前可以用js代码实现

function SectionToChinese(n){for(var r="",h="",c=0,e=!0;n>0;){var i=n%10;0===i?e||(e=!0,h=chnNumChar[i]+h):(e=!1,r=chnNumChar[i],r+=chnUnitChar[c],h=r+h),c++,n=Math.floor(n/10)}return 0===h.indexOf("\u4e00\u5341")&&(h=h.slice(1)),h}function n2c(n){var r=0,h="",c="",e=!1;if(0===n)return chnNumChar[0];for(;n>0;){var i=n%1e4;e&&(c=chnNumChar[0]+c),h=SectionToChinese(i),0!==i&&(h+=chnUnitSection[r]),c=h+c,e=1e3>i&&i>0,n=Math.floor(n/1e4),r++}return c}var chnNumChar=["\u96f6","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d","\u4e03","\u516b","\u4e5d"],chnUnitSection=["","\u4e07","\u4ebf"],chnUnitChar=["","\u5341","\u767e","\u5343"];

大佬,求问这个代码怎么使用