资讯专栏INFORMATION COLUMN

微信小程序时间转换

kyanag / 944人阅读

摘要:微信小程序时间转换和兼容问题和在时间解析时分隔符不同使用来分割使用来分割在中使用返回的是,在时间格式解析中不认识,需要替换为字符串的方法中有方法。

mpvue微信小程序:时间转换 Android和IOS兼容问题

Android和IOS在时间解析时分隔符不同
1.Android使用‘-’来分割
2.IOS使用‘/’来分割

在ios中使用new Date("2019-06-17")返回的是null,ios在时间格式解析中不认识‘-’,需要替换为‘/’;字符串的方法中有str.replace()方法。

字符串str.replace()方法
1.str.replace("需要替换的字符串", "新字符串") // 这种方式只能替换字符串中首个需要替换的字符;如果后边还有想要替换的字符也不会进行替换
2.str.replace(/需要替换的字符串/g, "新字符串") // 使用正则表达式可以替换字符串中所有需要替换的字符(如果是‘-’、‘/’等特殊字符记得加‘反斜杠’哦!)。

    formatDate(time) { // 接收参数格式 xxxx-xx-xx
        let newTime = "";
        let result = ""; // 接收时间
        wx.getSystemInfo({ // 微信小程序获取设备系统信息
            success:function(res){ // 获取系统信息成功
                if(res.platform == "devtools"){
                    console.log("我是PC");
                    newTime = time;
                }else if(res.platform == "ios"){
                    console.log("我是IOS");
                    newTime = time.replace(/-/g, "/"); // 系统为IOS时用‘/’来分割
                }else if(res.platform == "android"){
                    console.log("我是android");
                    newTime = time;
                }
                let lr = new Date(newTime); // 传入的过去时间
                let now = new Date(); // 当前时间
                let dt = now -lr;
                let second = dt / 1000; // 秒
                if(second < 3600) {
                    result = parseInt(s / 60) + "分钟";
                } else if(second < 86400) {
                    result = parseInt(s / 60 / 60) + "小时";
                } else if(second <604800) {//在一周内
                    result = parseInt(s / 60 / 60 / 24) + "天";
                } else if(second <31104000) {
                    result = parseInt(s / 60 / 60 / 24 / 30) + "月";
                } else if(second <311040000) {
                    result = parseInt(s / 60 / 60 / 24 / 30 / 12) + "年";
                }
            }, fail(err){
                console.log("设备系统信息获取失败", err)
            },
        })
        return result
  }

这是我在使用mpvue开发微信小程序时遇到的一个时间转换的问题,希望能对ni有所帮助;如果有什么以后我们可以多多交流。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/104763.html

相关文章

  • 业内首个 React Native转信小程序引擎 Alita 正式发布

    摘要:得益于运行阶段处理逻辑的设计,支持将使用的应用转换成微信小程序。我们也在考察这一新的跨端方案和微信小程序融合转化的可行性。 作者:京东ARES多端技术团队 前言 Alita是一套由京东ARES多端技术团队打造的React Native代码转换引擎工具。它对React语法有全新的处理方式,支持在运行时处理React语法,实现了React Native和微信小程序之间的主要组件对齐,可以用...

    陆斌 评论0 收藏0
  • 扩展信小程序框架功能

    摘要:扩展微信小程序框架功能是状态容器,提供可预测化的状态管理。扩展微信小程序框架功能日期时间是一个的日期时间处理工具类,其对于的日期时间处理功能非常强悍和全面。 通过第三方 JavaScript 库,扩展微信小程序框架功能。 扩展微信小程序框架功能(1)——Promise ES6 对 Promise 有了原生的支持,但微信开发者工具更新版本(0.11.112200)后, 移除了开发者工具...

    marek 评论0 收藏0
  • 信小程序中的iOS兼容性问题

    摘要:记录下在微信小程序中遇到的一些兼容性问题,兼容性中的属性字体不居中对设置及对设置高度中滚动卡顿设置微信小程序中解决中时间格式不兼容在实现倒计时,根据后台返回的时间格式转换时,后台返回了时间格式为,然后利用转换时,中无法展示,安 记录下在微信小程序中遇到的一些兼容性问题,iOS兼容性 1.iOS中input的placeholder属性字体不居中 对placeholder设置line-h...

    mingzhong 评论0 收藏0
  • 10分钟上线 - 利用函数计算构建信小程序的Server端

    摘要:本文以开发一个类似语音口令红包小程序为例,向您讲解如何使用阿里云函数计算快速构建微信小程序的服务端。 前言 这篇文章适合所有的想微信小程序开发新手、老鸟以及想准备学习开发微信小程序的程序猿。本文以开发一个类似语音口令红包小程序为例,向您讲解如何使用阿里云函数计算快速构建微信小程序的服务端。通过本文,您将会了解以下内容: demo概览 传统服务器架构 VS Serverless架构 S...

    levinit 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<