场景

在vue页面中需要对一些变量或者属性进行判断等。

所以讲这些js方法抽离出来一个公共的验证的方法。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

在项目下新建utils目录,在此目录下新建validate.js

/*** @param {string} path* @returns {Boolean}*/
export function isExternal(path) {return /^(https?:|mailto:|tel:)/.test(path)
}/*** @param {string} url* @returns {Boolean}*/
export function validURL(url) {const reg = /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/return reg.test(url)
}/*** @param {string} str* @returns {Boolean}*/
export function validLowerCase(str) {const reg = /^[a-z]+$/return reg.test(str)
}/*** @param {string} str* @returns {Boolean}*/
export function validUpperCase(str) {const reg = /^[A-Z]+$/return reg.test(str)
}/*** @param {string} str* @returns {Boolean}*/
export function validAlphabets(str) {const reg = /^[A-Za-z]+$/return reg.test(str)
}/*** @param {string} email* @returns {Boolean}*/
export function validEmail(email) {const reg = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/return reg.test(email)
}/*** @param {string} str* @returns {Boolean}*/
export function isString(str) {if (typeof str === 'string' || str instanceof String) {return true}return false
}/*** @param {Array} arg* @returns {Boolean}*/
export function isArray(arg) {if (typeof Array.isArray === 'undefined') {return Object.prototype.toString.call(arg) === '[object Array]'}return Array.isArray(arg)
}

然后在需要用到这些js的方法的vue页面中

import { isExternal } from '@/utils/validate'

比如这里需要调用isExternale这个方法,引入后就可以

    isExternal() {return isExternal(this.iconClass)},

来调用了。

JS中使用正则表达式封装的一些常用的格式验证的方法-是否外部url、是否小写、邮箱格式、是否字符、是否数组相关推荐

  1. JS中常用方法的封装【转载】

    JS中常用方法的封装[转载] 转载理由:我想这么好的内容,可不能因为作者的博客倒闭了就没了,所以就Fork了一份,并复制了一份到自己的博客. 编写自己的代码库(javascript常用实例的实现与封装 ...

  2. 前端开发:JS中关于正则表达式的使用汇总

    前言 在前端开发过程中,关于正则表达式的使用也是必备技能,尤其是在实际业务需求的时候,需要处理一些不能按照正常语句操作的逻辑,如前端开发中的字符匹配.参数处理等都需要正则表达式来匹配截取处理.虽然正则 ...

  3. html js脚本限制 正则,简单谈谈JS中的正则表达式

    1.正则表达式包括两部分 ①定义正则表达式的规则: ②正则表达式的模式(i/g/m): 2.声明正则表达式 ① 字面量声明: var reg = /表达式规则/表达式模式: eg:var reg = ...

  4. 如何在JS中应用正则表达式

    背景:在之前的随笔中写过C#中如何使用正则表达式,这篇随笔主要讲如何在js中应用正则表达式 如下代码: 1 $("#zhengze").click(function () { 2 ...

  5. js中的正则表达式(2)

    前言 紧接着上次的js中的正则表达式(1),这一文搁在那很久了的,本文为初学者学习笔记心得,适用我这种小白,并不是什么高大尚的内容,您将在本文中看到,如何实现重复字符匹配,子表达式的使用,嵌套以及re ...

  6. js中字符串正则表达式、正则法则pattern、RegExp、flags、exec

    全栈工程师开发手册 (作者:栾鹏) js系列教程3-字符串.正则表达式全解 js中字符串正则表达式 正则法则的应用 正则表达式 = /pattern/flags 其中flags中g表示匹配全部,i表示 ...

  7. js 中遇到英文双引号后端无法正常存储的解决方法

    js 中遇到英文双引号后端无法正常存储的解决方法 当在前端js输入框中要输入英文双引号的时候比如,"你好,北京",这个时候后端获取不到前端传输的数据.工作中遇到此文题思考很久,查资 ...

  8. 注意判断js中使用正则表达式的转义字符,到底是对谁进行转义!!!

    前言: 前一段时间,对如下一段特殊符号进行测试,js中有一段代码如下: [`~!@#$^&*()=|{};:'".,[\]./?~@#&*{}] 结果发现不能匹配\,于是没有 ...

  9. Java和Js中的正则表达式

    什么是正则表达式? 正则表达式(Regular Expression)就是用某种模式去匹配一类字符串的公式.如你要在一篇文章中查找第一个字是"罗"最后一个字是"浩&quo ...

最新文章

  1. 如何通过代码连接SQL Server数据库
  2. 15 年来, 程序员升级打怪的路上,这些书始终与你并肩作战
  3. 使用复合数据类型——PL/SQL表
  4. 全球及中国新鲜芒果制品市场投资份额与营销渠道分析报告2022版
  5. UVA 821 Page Hopping
  6. 记录一个AndroidX和Android support库不能共存的坑
  7. Python使用pytest框架进行单元测试
  8. 日更第4期-2015-1-19-openFrameworks系列第三讲-面向对象的小球们
  9. 飘云阁15周年逆向破解教程
  10. ubuntu16.04 部署dzzoffice+onlyoffice 局域网实现word、excel文档协同编辑
  11. python查文章字数
  12. 计算机比赛小组名称和口号,取个小组队名和口号
  13. java 批量设置单元格边框,VC下设置Excel单元格的边框 (转)
  14. 高德地图天气接口返回天气图标url
  15. 实例学习Ansible系列:配置文件ansible.cfg的设定与使用
  16. OkHttpClient 源码分析 1(基于3.9.0的源码)
  17. GPL和LGPL协议
  18. 蓝桥杯模块学习9——PWM脉冲宽度调制(深夜学习——单片机)
  19. 单调队列————[USACO09MAR]向右看齐Look Up
  20. mysqldump导出所有数据库数据

热门文章

  1. 两个例子详解并发编程的可见性问题和有序性问题,通过volatile保证可见性和有序性以及volatile的底层原理——缓存一致性协议MESI和内存屏障禁止指令重排
  2. SpringBoot+Redis防止接口重复提交
  3. python多态的概念_python中的多态
  4. List Set Map的区别
  5. python求平方根的代码_python如何求平方根
  6. 苹果手机怎么清理听筒灰尘_安卓 | 让手机自动清理听筒扬声器灰尘,你试过了吗?...
  7. QT最方便的LOG库使用Easylogging++,只需要一个头文件
  8. 3、leetcode35 搜索插入位置**
  9. lua如何判断是否支持cookie_我们应该如何判断机油是否变质?
  10. gpg keys for php 5.5,Fedora解决/etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-x86_64问题