前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JS正则如何限制打折小数点?

JS正则如何限制打折小数点?

作者头像
执行上下文
发布2022-07-26 15:07:40
4.6K0
发布2022-07-26 15:07:40
举报
文章被收录于专栏:执行上下文执行上下文

1、必须包含小数点

代码语言:javascript
复制
let regDis = /^(?=0\.[1-9]|[1-9]\.\d).{3}$|^([2-9])$/

2、非必须包含小数点

代码语言:javascript
复制
let regDis = /^[0-9]{1}(\.[0-9])?$/

3、判断H5是否在小程序webview打开

代码语言:javascript
复制
<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script>
<script>
    var ua = navigator.userAgent.toLowerCase();
    if(ua.match(/MicroMessenger/i)=="micromessenger") {
        //ios的ua中无miniProgram,但都有MicroMessenger(表示是微信浏览器)
        wx.miniProgram.getEnv((res)=>{
           if (res.miniprogram) {
               alert("在小程序里");
           } else {
               alert("不在小程序里");
           }
        })
    }else{
        alert('不在微信里');
    }
</script>

4、window.open()跳转被拦截!

通过异步请求获取跳转链接后再进行window.open跳转会被浏览器拦截。

解决方案
代码语言:javascript
复制
export default {
  data() {
    return {
      jumpUrl: '',
      newWin: null  // 新窗口的引用
    }
  },
  watch: {
    url(newVal, oldVal) {
      if(newVal && this.newWin) {
        this.newWin.sessionStorage.clear()
        this.newWin.location.href = newVal;
        this.jumpUrl = '';
        this.newWin = null;
      }
    }
  },
  methods: {
    clickHandle() {
      let _this = this;
      // 先打开一个空的新窗口,再请求
      this.newWin = window.open();
      api.get('xxx', params).then(response => {
        let data = response.data;
        if(data.code === 0 ) {
          _this.jumpUrl = data.data.url || '';
        }
      });
    }
  }
}

6、数组对象去重

代码语言:javascript
复制
export function deteleObject(obj) {
    var uniques = [];
    var stringify = {};
    for (var i = 0; i < obj.length; i++) {
        var keys = Object.keys(obj[i]);
        keys.sort(function(a, b) {
            return (Number(a) - Number(b));
        });
        var str = '';
        for (var j = 0; j < keys.length; j++) {
            str += JSON.stringify(keys[j]);
            str += JSON.stringify(obj[i][keys[j]]);
        }
        if (!stringify.hasOwnProperty(str)) {
            uniques.push(obj[i]);
            stringify[str] = true;
        }
    }
    uniques = uniques;
    return uniques;
}
代码语言:javascript
复制
  deteleObject(obj) {
    var hash = {};
    obj = obj.reduce(function(item, next) {
        hash[next.openid] ? '' : hash[next.openid] = true && item.push(next);
        return item
    }, [])
    return obj
  },
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-01-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 执行上下文 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、必须包含小数点
  • 2、非必须包含小数点
  • 3、判断H5是否在小程序webview打开
  • 4、window.open()跳转被拦截!
    • 解决方案
    • 6、数组对象去重
    相关产品与服务
    云开发 CloudBase
    云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档