开发者社区> 卖坚果的怪叔叔> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

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

简介: JS正则如何限制打折小数点?
+关注继续查看

1、必须包含小数点

let regDis = /^(?=0\.[1-9]|[1-9]\.\d).{3}$|^([2-9])$/

2、非必须包含小数点

let regDis = /^[0-9]{1}(\.[0-9])?$/

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

<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跳转会被浏览器拦截。

解决方案

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、数组对象去重

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;
}
deteleObject(obj) {
    var hash = {};
    obj = obj.reduce(function(item, next) {
        hash[next.openid] ? '' : hash[next.openid] = true && item.push(next);
return item
    }, [])
return obj
  },

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
JS判断只能是数字和小数点
原文:JS判断只能是数字和小数点 1.文本框只能输入数字代码(小数点也不能输入)  2.只能输入数字,能输小数点.   3.数字和小数点方法二 4.只能输入字母和汉字  5.只能输入英文字母和数字,不能输入中文  6.
431 0
js截取小数点后几位
如果${showInfo.tt}的值为20,要要它除以10以后精确到小数点后2位,那么js代码中可作如下写法:        var a = ${showInfo.tt}/10;               //alert(a.toFixed(3)); //表示到小数点后3位得出的值为2.000 document.write(a.toFixed(2)); //得出的值为2.00
724 0
js只允许输入数字和小数点
//示例代码: //只允许输入数字与.: //只允许输入数字 : //只允许输入数字与小数点 function checkKeyFo...
290 0
利用JavaScript实现二级联动
利用JavaScript实现二级联动 要实现JavaScript二级联动效果,首先要确定需要哪些技术: 二维数组 for in循环 new Option(text,value,true,true) add(option,null) onchange() 表单事件 HTML代码: <!-- <input type="text" id="text"> --> 请选择省份: <select name="" id="provinces"> <!-- <option value="江苏省">江苏省</option>
0 0
JavaScript函数柯里化的实现原理,进来教你完成一个自己的自动实现柯里化方法
JavaScript函数柯里化的实现原理,进来教你完成一个自己的自动实现柯里化方法
0 0
weex-自定义module,实现weex在iOS的本地化,js之间互相跳转,交互,传值(iOS接入weex的最佳方式)
weex-自定义module,实现weex在iOS的本地化,js之间互相跳转,交互,传值(iOS接入weex的最佳方式)
0 0
+关注
卖坚果的怪叔叔
一枚佛系前端开发,会一丢丢摄影,喜欢折腾,爱好美食。分享点前端技巧、笔记以及各种有趣的APP和资源教程
文章
问答
文章排行榜
最热
最新
相关电子书
更多
Javascript中的函数
立即下载
Javascript异步编程
立即下载
JS零基础入门教程(上册)
立即下载