使用JavaScript生成罗马字符的实例代码


Posted in Javascript onJune 08, 2018

生成罗马数字

这样生成有问题,到了 12 之后就不规律了

roman() {
 return new Array(30).fill('Ⅰ').map((lastLetter, i) => {
  return String.fromCharCode(lastLetter.charCodeAt(0) + i)
 })
}

下面这个正确的姿势

var data = {
  ↈ: 100000,
  ↂↈ: 90000,
  ↇ: 50000,
  ↂↇ: 40000,
  ↂ: 10000,
  Ⅿↂ: 9000,
  ↁ: 5000,
  Ⅿↁ: 4000,
  Ⅿ: 1000,
  ⅭⅯ: 900,
  Ⅾ: 500,
  ⅭⅮ: 400,
  Ⅽ: 100,
  ⅩⅭ: 90,
  Ⅼ: 50,
  ⅩⅬ: 40,
  Ⅹ: 10,
  Ⅸ: 9,
  Ⅷ: 8,
  Ⅶ: 7,
  Ⅵ: 6,
  Ⅴ: 5,
  Ⅳ: 4,
  Ⅲ: 3,
  Ⅱ: 2,
  Ⅰ: 1
 } 
function g(num){
 var roman = ''
 if(num > 30000) return false
 var arr = []
 for (i in data) {
  while (num >= data[i]) {
   roman += i;
   num -= data[i];
  }
 }
 return roman
}
let arr = []
for (let index = 1; index < 26; index++) {
 arr.push(g(index))
}
console.log(arr)

手工

export function getRomanNumber() {
 return [
  'Ⅰ', 'Ⅱ', 'Ⅲ', 'Ⅳ', 'Ⅴ', 'Ⅵ', 'Ⅶ', 'Ⅷ', 'Ⅸ', 'Ⅹ',
  'ⅩⅠ', 'ⅩⅡ', 'ⅩⅢ', 'ⅩⅣ', 'ⅩⅤ', 'ⅩⅥ', 'ⅩⅦ', 'ⅩⅧ', 'ⅩⅨ', 'ⅩⅩ',
  'ⅩⅩⅠ', 'ⅩⅩⅡ', 'ⅩⅩⅢ', 'ⅩⅩⅣ', 'ⅩⅩⅤ', 'ⅩⅩⅥ'
 ]
}

总结

以上所述是小编给大家介绍的使用JavaScript生成罗马字符,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
asp 取文本框名称代码
Dec 02 Javascript
两个JavaScript jsFiddle JSBin在线调试器
Mar 14 Javascript
Javascript 遮罩层和加载效果代码
Aug 01 Javascript
js 单击式的下拉菜单效果实例
Aug 13 Javascript
js获取或设置当前窗口url参数的小例子
Oct 14 Javascript
js 走马灯简单实例
Nov 21 Javascript
jquery复选框全选/取消示例
Dec 30 Javascript
浅谈jQuery中replace()方法
May 13 Javascript
javascript中异常处理案例(推荐)
Oct 03 Javascript
JS实现按钮添加背景音乐示例代码
Oct 17 Javascript
element-ui upload组件多文件上传的示例代码
Oct 17 Javascript
详解Javascript实践中的命令模式
May 05 Javascript
jQuery实现表单动态加减、ajax表单提交功能
Jun 08 #jQuery
Node.js中你不可不精的Stream(流)
Jun 08 #Javascript
用react-redux实现react组件之间数据共享的方法
Jun 08 #Javascript
vue指令只能输入正数并且只能输入一个小数点的方法
Jun 08 #Javascript
bootstrap treeview 树形菜单带复选框及级联选择功能
Jun 08 #Javascript
原生实现一个react-redux的代码示例
Jun 08 #Javascript
vue项目中使用百度地图的方法
Jun 08 #Javascript
You might like
dedecms系统的广告设置代码 基础版本
2010/04/09 PHP
PHP编码规范的深入探讨
2013/06/06 PHP
php启用sphinx全文搜索的实现方法
2014/12/24 PHP
PHP创建PowerPoint2007文档的方法
2015/12/10 PHP
Laravel5权限管理方法详解
2016/07/26 PHP
php学习笔记之mb_strstr的基本使用
2018/02/03 PHP
使用正则替换变量
2007/05/05 Javascript
细品javascript 寻址,闭包,对象模型和相关问题
2009/04/27 Javascript
js中关于new Object时传参的一些细节分析
2011/03/13 Javascript
js中函数调用的两种常用方法使用介绍
2014/07/17 Javascript
jquery实现键盘左右翻页特效
2015/04/30 Javascript
深入浅析Extjs中store分组功能的使用方法
2016/04/20 Javascript
JavaScript弹窗基础篇
2016/04/27 Javascript
JavaScript直播评论发弹幕切图功能点集合效果代码
2016/06/26 Javascript
jQuery fadeOut 异步实例代码详解
2016/08/18 Javascript
vue2.0全局组件之pdf详解
2017/06/26 Javascript
原生JavaScript实现的简单放大镜效果示例
2018/02/07 Javascript
使用webpack搭建react开发环境的方法
2018/05/15 Javascript
jQuery AJAX 方法success()后台传来的4种数据详解
2018/08/08 jQuery
基于nodejs的雪碧图制作工具的示例代码
2018/11/05 NodeJs
jQuery实现的自定义轮播图功能详解
2018/12/28 jQuery
vue路由传参的基本实现方式小结【三种方式】
2020/02/05 Javascript
Node.js API详解之 repl模块用法实例分析
2020/05/25 Javascript
mustache.js实现首页元件动态渲染的示例代码
2020/12/28 Javascript
[48:51]完美世界DOTA2联赛PWL S2 Magma vs InkIce 第一场 11.28
2020/12/02 DOTA
Anaconda多环境多版本python配置操作方法
2017/09/12 Python
详解python实现交叉验证法与留出法
2019/07/11 Python
详解Python中正则匹配TAB及空格的小技巧
2019/07/26 Python
Django框架models使用group by详解
2020/03/11 Python
小学一年级学生评语
2014/04/22 职场文书
2014党员学习习主席讲话思想汇报
2014/09/15 职场文书
领导干部“四风”查摆问题个人整改措施
2014/10/28 职场文书
2019最新版试用期劳动合同模板!
2019/07/04 职场文书
MySQL性能压力基准测试工具sysbench的使用简介
2021/04/21 MySQL
详解使用 CSS prefers-* 规范提升网站的可访问性与健壮性
2021/05/25 HTML / CSS
Django Paginator分页器的使用示例
2021/06/23 Python