使用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 相关文章推荐
jquery uaMatch源代码
Feb 14 Javascript
js 字符串转换成数字的三种方法
Mar 23 Javascript
在Javascript操作JSON对象,增加 删除 修改的简单实现
Jun 02 Javascript
浅谈jQuery animate easing的具体使用方法(推荐)
Jun 17 Javascript
Backbone View 之间通信的三种方式
Aug 09 Javascript
JavaScript自定义文本框光标
Mar 05 Javascript
基于VUE移动音乐WEBAPP跨域请求失败的解决方法
Jan 16 Javascript
VUE组件中的 Drawer 抽屉实现代码
Aug 06 Javascript
Vue状态模式实现窗口停靠功能(灵动、自由, 管理后台Admin界面)
Mar 06 Javascript
Echarts.js无法引入问题解决方案
Oct 30 Javascript
解决antd 表单设置默认值initialValue后验证失效的问题
Nov 02 Javascript
Java无向树分析 实现最小高度树
Apr 09 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
php 表单验证实现代码
2009/03/10 PHP
php bootstrap实现简单登录
2016/03/08 PHP
PHP四种排序算法实现及效率分析【冒泡排序,插入排序,选择排序和快速排序】
2018/04/27 PHP
PHP性能测试工具xhprof安装与使用方法详解
2018/04/29 PHP
PHP文件操作实例总结【文件上传、下载、分页】
2018/12/08 PHP
jqeury eval将字符串转换json的方法
2011/01/20 Javascript
JavaScript中为元素加上name属性的方法
2011/05/09 Javascript
关于jquery中全局函数each使用介绍
2013/12/10 Javascript
node.js中的fs.realpath方法使用说明
2014/12/16 Javascript
JQuery实现鼠标滚轮滑动到页面节点
2015/07/28 Javascript
Position属性之relative用法
2015/12/14 Javascript
jQuery获取与设置iframe高度的方法
2016/08/01 Javascript
Javascript获取图片原始宽度和高度的方法详解
2016/09/20 Javascript
浅谈AngularJs指令之scope属性详解
2016/10/24 Javascript
vue一个页面实现音乐播放器的示例
2018/02/06 Javascript
基于webpack4搭建的react项目框架的方法
2018/06/30 Javascript
Angular5中提取公共组件之radio list的实例代码
2018/07/10 Javascript
Vue唯一可以更改vuex实例中state数据状态的属性对象Mutation的讲解
2019/01/18 Javascript
vue子路由跳转实现tab选项卡
2019/07/24 Javascript
JS判断数组四种实现方法详解
2020/06/29 Javascript
nuxt 服务器渲染动态设置 title和seo关键字的操作
2020/11/05 Javascript
Vue实现boradcast和dispatch的示例
2020/11/13 Javascript
[01:15:18]2014 DOTA2国际邀请赛中国区预选赛 LGD VS Speed Gaming.cn
2014/05/22 DOTA
[05:06]2017亚洲邀请赛DAC回顾片
2017/04/19 DOTA
Python实现E-Mail收集插件实例教程
2019/02/06 Python
给大家整理了19个pythonic的编程习惯(小结)
2019/09/25 Python
pytorch中torch.max和Tensor.view函数用法详解
2020/01/03 Python
拉夫劳伦爱尔兰官方网站:Ralph Lauren爱尔兰
2020/04/10 全球购物
Unineed中文官网:高端护肤美妆与时尚配饰,英国直邮
2020/07/23 全球购物
揠苗助长教学反思
2014/02/04 职场文书
应届大专生自荐书
2014/06/16 职场文书
感恩老师演讲稿600字
2014/08/28 职场文书
大学生青年志愿者活动总结
2015/05/06 职场文书
婚庆主持词大全
2015/06/30 职场文书
tensorflow中的梯度求解及梯度裁剪操作
2021/05/26 Python
Nginx配置https的实现
2021/11/27 Servers