使用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 相关文章推荐
JavaScript Base64编码和解码,实现URL参数传递。
Sep 18 Javascript
ext监听事件方法[初级篇]
Apr 27 Javascript
js屏蔽鼠标键盘(右键/Ctrl+N/Shift+F10/F11/F5刷新/退格键)
Jan 24 Javascript
教你在heroku云平台上部署Node.js应用
Jul 30 Javascript
jquery实现叠层3D文字特效代码分享
Aug 21 Javascript
javascript数据类型验证方法
Dec 31 Javascript
JavaScript学习笔记整理_用于模式匹配的String方法
Sep 19 Javascript
基于jquery二维码生成插件qrcode
Jan 07 Javascript
JS使用Prim算法和Kruskal算法实现最小生成树
Jan 17 Javascript
JavaScript如何借用构造函数继承
Nov 06 Javascript
vue中实现动态生成二维码的方法
Feb 21 Javascript
详解JavaScript类型判断的四种方法
Oct 21 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的面试题集,附我的答案和分析(一)
2006/11/19 PHP
php安全配置 如何配置使其更安全
2011/12/16 PHP
php图片加中文水印实现代码分享
2012/10/31 PHP
使用Linux五年积累的一些经验技巧
2013/06/20 PHP
PHP中定义数组常量(array常量)的方法
2014/11/17 PHP
PHP基于socket实现的简单客户端和服务端通讯功能示例
2017/07/10 PHP
PHP实现与java 通信的插件使用教程
2019/08/11 PHP
thinkphp 5框架实现登陆,登出及session登陆状态检测功能示例
2019/10/10 PHP
php 多进程编程父进程的阻塞与非阻塞实例分析
2020/02/22 PHP
索趣科技的答案
2007/02/07 Javascript
《JavaScript高级程序设计》阅读笔记(二) ECMAScript中的原始类型
2012/02/27 Javascript
JS图片预加载 JS实现图片预加载应用
2012/12/03 Javascript
深入探讨JavaScript String对象
2015/03/09 Javascript
angularjs实现首页轮播图效果
2017/04/14 Javascript
解决BootStrap Fileinput手机图片上传显示旋转问题
2017/06/01 Javascript
Webpack如何引入bootstrap的方法
2017/06/17 Javascript
详解Angular4 路由设置相关
2017/08/26 Javascript
ionic2懒加载配置详解
2017/09/01 Javascript
JavaScript实现简单音乐播放器
2020/04/17 Javascript
从vue源码看props的用法
2019/01/09 Javascript
JS实现从对象获取对象中单个键值的方法示例
2019/06/05 Javascript
Vue通过provide inject实现组件通信
2020/09/03 Javascript
Python使用pandas处理CSV文件的实例讲解
2018/06/22 Python
python自动化测试之异常及日志操作实例分析
2019/11/09 Python
PyTorch使用cpu加载模型运算方式
2020/01/13 Python
基于jupyter代码无法在pycharm中运行的解决方法
2020/04/21 Python
python实现简单的tcp 文件下载
2020/09/16 Python
详解tensorflow之过拟合问题实战
2020/11/01 Python
html5 Canvas绘制线条 closePath()实例代码
2012/05/10 HTML / CSS
介绍一下gcc特性
2012/01/20 面试题
外贸业务员岗位职责
2013/11/24 职场文书
小饰品店的创业计划书范文
2013/12/28 职场文书
争先创优演讲稿
2014/09/15 职场文书
《夹竹桃》教学反思
2016/02/23 职场文书
2019行政前台转正申请书范文3篇
2019/08/15 职场文书
2019员工保密协议书(3篇)
2019/09/23 职场文书