笔记:JS仿excel十进制和26进制转换算法

引子:看过这篇文章用C#实现的十进制和26进制转换算法,觉得在前端以后会用到,遂改写出Javacript的写法。

十进制转26进制:

function convertDSTo26BS(num){var code='';var reg = /^\d+$/g;if(!reg.test(num)){return code;}while (num>0){m = num % 26if (m==0){m = 26;}code =   String.fromCharCode(64 + parseInt(m)) + code;num = ( num - m ) /26;}return code;
}

知识要点:求模%,String.formCharCode,正则

26进制转十进制:

function convert26BSToDS(code){var num=-1;var reg = /^[A-Z]+$/g;if(!reg.test(code)){return num;}num=0;for (var i = code.length - 1, j = 1; i >= 0; i--, j *= 26){num +=  (code[i].charCodeAt() -64 )* j;}return num;
}

知识要点:String.charCodeAt,正则

chrome下测试:

笔记:JS仿excel十进制和26进制转换算法相关推荐

  1. 十进制和26进制转换算法

    [问题描述] 在Excel中,列的名称是这样一个递增序列:A.B.C.-.Z.AA.AB.AC.-.AZ.BA.BB.BC.-.BZ.CA.-.ZZ.AAA.AAB-. 我们需要将上述列名序列和以下自 ...

  2. 十进制与26进制英文字母互转

    最近在封装Excel组件,需要提供两个接口,分别根据单元索引和单元名称访问单元格.例如,GetCell(1, 2)和GetCell("A2"),这两种方法返回的结果是相同的.这里遇 ...

  3. 二进制 八进制 十进制 十六进制 之间进制转换(图解篇)

    一.本文所涉及的内容(Contents)                      目录 一.本文所涉及的内容(Contents) 二.背景(Contexts) 三.进制转换算法(Convert) ( ...

  4. 进制转换算法 (C语言实现一个简单的二进制转换工具) ------- 算法笔记010

    进制转换算法概念 其核心是利用栈的存储结构性质,进行数据的入栈出栈时的计算,让后将计算好的数据存入另一个栈内,最后再出栈输出.由于栈的先进后出特性,最后输出的顺序和输入的顺序是一样的.具体如上图. 栈 ...

  5. excel 26进制 php,记录一次华为招聘的编程题-excel中的26进制

    var line = "abcdefghijklmnopqrstuvwxyz"; var list = line.split(""); function bas ...

  6. LeetCode Excel Sheet Column Number(进制转换问题)

    题意:给出excel表格中的列的表示形式,问是第多少列 思路:进制转换问题 代码如下: public class Solution {public int titleToNumber(String s ...

  7. 每天一道LeetCode-----将数字用字母表示(本质是26进制转换)

    Excel Sheet Column Title 原题链接Excel Sheet Column Title 讲数字转为字母'A'到'Z'表示,对应关系如图 思路: 本质上是将10尽职转为26进制,不同 ...

  8. Excel——keil5内存数据进制转换

    前言:keil5当中的仿真h可以查看内存数据,但内存中的数据一般都是十六进制,不方便观察计算,所以当数据量小的时候,可以把仿真中的数据粘贴到excel分析.   直接将仿真中的内存数据粘贴到excel ...

  9. js中parseInt与parseFloat在进制转换的区别

    项目中需要转换一个16进制数0x00000000000000000000000000000000000000001c0bed842bda49e0fc480000,因为考虑到可能是一个小数,所以使用了p ...

最新文章

  1. VS上配置opencv249所添加的附加依赖项
  2. 产品运行所需的信息检索失败_域名解析失败
  3. [Linux]history 显示命令执行的时间
  4. redis 的雪崩和穿透?
  5. pytorch教程龙曲良26-30
  6. php创建分页类,一个最强的PHP通用分页类
  7. 微软Skype Translator将支持阿拉伯语即时语音翻译
  8. pyboard micropython_pyboard:tutorial:repl
  9. 设计模式——函数的写作使用外卖模式
  10. swoole mysql 并发_如何用Swoole测试MySQL在特定SQL下的并发性能
  11. dhcp服务器分配指定ip,DHCP服务(自动分配IP、绑定固定IP)
  12. TensorFlow构建模型(图片数据加载)六
  13. macos 设置内外网同时访问
  14. JxBrowser做爬虫时处理浏览器对话框
  15. 主引導记录(MBR)
  16. 在我的世界修改服务器吗 名字,我的世界怎么改名字
  17. vb wps 链接单元格_wps如何超链接wps表格.doc
  18. Cocos Create 3.3 打包安卓apk
  19. PCL笔记二:PCD解析;PCD读取;PCD与XYZ转换;
  20. 创业之初你不可不知的融资知识

热门文章

  1. 大屏页面能够在大屏和电脑自适应
  2. 2022-2027年中国酒店式公寓市场规模现状及投资规划建议报告
  3. CSDN每日一练技巧
  4. RTP、RTCP、RTSP、RSVP介绍
  5. 基于android的银行管理系统,基于Android移动平台的银行客户管理系统
  6. 【设计模式】——模板方法模式
  7. laravel 的 intervention-image 图像处理笔记
  8. Oracle rac使用nid和dbms_backup_restore包修改dbid和dbname
  9. 企业银行一般户终于办理下来
  10. 国内名校还是国外读书