常用的检验

 1. 手机号 及 座机号 校验

export const validatePhone = phone => {
  const mobileRegex = /^1[3-9]\d{9}$/;
  const landlineRegex = /^(0\d{2,3}-?)?[1-9]\d{6,7}$/;
  return mobileRegex.test(phone) || landlineRegex.test(phone);
};

2. 判断输入是否为有效的 JSON 或者 JSON 字符串

/**
 * @param {any} val - 待判断的值
 * @returns {boolean} - 如果是对象或可解析的 JSON 字符串,返回 true;否则返回 false
 */
export function validatejson(val) {
  // 直接判断是否为对象(排除 null 和数组)
  if (val !== null && typeof val === 'object') {
    return true;
  }

  // 尝试解析字符串为 JSON
  if (typeof val === 'string') {
    try {
      const obj = JSON.parse(val);
      // 解析后还需判断是否为对象或数组
      return obj !== null && typeof obj === 'object';
    } catch (e) {
      return false;
    }
  }
    
  // 非对象、非数组、非字符串,或者字符串不是 JSON
  return false;
}

 

posted @ 2025-06-13 18:48  瑶开心  阅读(11)  评论(0)    收藏  举报