今天在处理一个bug问题,适配客户端版本:若版本号未达到,则不可运行该功能,若达到则可运行。

版本号规则如下:(一般统一为2个点,其他的是数字,版本号从高位到低位,首位越大则越大,首位相同则对比下一位...)

版本由低到高:
6.10.9
7.9.
7.10.
7.21.

来看下怎么实现。

实现原理:

取出当前版本号,传递目标版本号。将他们分别分割成数组。每个元素进行对比。第一位大的就大,第一位相同就对比下一位...循环。

假设当前版本号为:

调用输出结果:

7.9.5 > 6.10.1

7.9.5 = 7.9.5 (相同也表示满足版本号)

7.9.5 < 7.10.3

7.9.5 < 7.21.1

  

【js】版本号对比处理方案的更多相关文章

  1. JS 模块化和打包方案收集

    1.这里想讨论的是拆分规则,不是在问哪个工具怎么使用.2.这里没有在想找正确答案,因为感觉这个问题要结合具体业务场景. 随着项目开发越来越大,一开始代码全打包到一个文件的方式,让文件越来越大,接下来要 ...

  2. diff.js 列表对比算法 源码分析

    diff.js列表对比算法 源码分析 npm上的代码可以查看 (https://www.npmjs.com/package/list-diff2) 源码如下: /** * * @param {Arra ...

  3. 有了这套flexible.js 移动端自适应方案,你就能在移动端的来去自如, (*^__^*)

    flexible.js 移动端自适应方案 一,flexible.js 的使用方式: github地址:https://github.com/amfe/lib-flexible 官方文档地址:https ...

  4. 版本号对比方案及参考代码(Objective-C,Java,JavaScript)

    常用版本号 如 2.0.1 与 2.0.2 相比  2.0.2是比2.0.1要新的 那么该如何对这个版本号进行对比 这里有一个比较简单的实现方案 2.0.1 这种格式可以拆分为多个部分 如这里的2是大 ...

  5. 已有 JS 模块化和打包方案收集

    模块化方案 RequireJS AMD 方案, 常用的 define 语法, 异步加载模块, 目前很多支持: 官网 http://requirejs.org/ Github https://githu ...

  6. 国内外前端(js)开发框架对比

    国内外前端开发框架对比 首先我们先对目前国内外主流前端开发框架做一个基本的了解,之后再对他们进行一个直观的对比. Bootstrap Bootstrap(http://www.bootcss.com) ...

  7. Angular和Vue.js 深度对比

    Vue.js 是开源的 JavaScript 框架,能够帮助开发者构建出美观的 Web 界面.当和其它网络工具配合使用时,Vue.js 的优秀功能会得到大大加强.如今,已有许多开发人员开始使用 Vue ...

  8. Headless Chrome:服务端渲染JS站点的一个方案【上篇】【翻译】

    原文链接:https://developers.google.com/web/tools/puppeteer/articles/ssr 注:由于英文水平有限,没有逐字翻译,可以选择直接阅读原文 tip ...

  9. Headless Chrome:服务端渲染JS站点的一个方案【中篇】【翻译】

    接上篇 防止重新渲染 其实说不对客户端代码做任何修改是忽悠人的.在我们的Express 应用中,通过Puppteer加载页面,提供给客户端响应,但是这个过程是有一些问题的. js脚本在服务端的Head ...

随机推荐

  1. snmp简单测试

    一.环境搭建 搜索windows Server2003安装配置snmp 服务,按照提示来就行 二.利用 1.找出Coummunity Strings 利用于 auxiliary/scanner/snm ...

  2. 旧版本的firefox 下载 和 安装(查找web元素路径) ---web 元素 自动化测试

    ftp.mozilla.orgpubfirefoxreleases   旧版下载地址   选择47版本     因为48后面的会进行插件校验    这样firepath安装不成功   安装文件:在百度 ...

  3. js 高阶函数 闭包

    摘自  https://www.cnblogs.com/bobodeboke/p/5594647.html 建议结合另外一篇关于闭包的文章一起阅读:http://www.cnblogs.com/bob ...

  4. shell脚本if语句的多种条件参数

    if语句有多种写法 [root@shell-yankerp sh]# [ -f file ] && echo "yes" || echo "no" ...

  5. linux-rhel7配置网卡bond双网卡主备模式

    参考以下文章中的 2.centos7配置bonding: https://www.cnblogs.com/huangweimin/articles/6527058.html 以下是配置过程的操作和打印 ...

  6. oracle 表空间,用户的创建及授权,表空间基本操作

    参考地址:https://www.cnblogs.com/zhaideyou/articles/5845271.html Oracle安装完后,其中有一个缺省的数据库,除了这个缺省的数据库外,我们还可 ...

  7. 2019-04-20 Python之科学计算库学习总结

    一.numpy库和matplotlib库的学习 (1)numpy库介绍:科学计算包,支持N维数组运算.处理大型矩阵.成熟的广播函数库.矢量运算.线性代数.傅里叶变换.随机数生成,并可与C++/Fort ...

  8. box-sizing:border-boxing的使用

    <div class="box"></div> .box { margin-top: 200px; margin-left: 200px; backgrou ...

  9. oo第二次博客总结

    不知道怎么说好呢,自己对自己也很没有信心的,希望自己能做出些许改变

  10. Windows使用tail命令跟踪日志

    我们知道如果是Unix/Linux环境可以直接使用 tail -f xxx.log即可. 但是Windows并没有自带这个命令,不过从网上可以找到tail.zip 实测可以将其解压放在C:\Windo ...