扩展String功能方法

 更新时间:2006年09月22日 00:00:00   作者:  
一直好忙,没有时间写属于自己的东西,但是看着一天天不更新心情也不是个滋味,只有从网上收罗一些比较好的东东贴上。
/*** 删除首尾空格 ***/
String.prototype.Trim = function() {
  return this.replace(/(^\s*)|(\s*$)/g, "");
}

/*** 统计指定字符出现的次数 ***/
String.prototype.Occurs = function(ch) {
//  var re = eval("/[^"+ch+"]/g");
//  return this.replace(re, "").length;
  return this.split(ch).length-1;
}

/*** 检查是否由数字组成 ***/
String.prototype.isDigit = function() {
  var s = this.Trim();
  return (s.replace(/\d/g, "").length == 0);
}

/*** 检查是否由数字字母和下划线组成 ***/
String.prototype.isAlpha = function() {
  return (this.replace(/\w/g, "").length == 0);
}

/*** 检查是否为数 ***/
String.prototype.isNumber = function() {
  var s = this.Trim();
  return (s.search(/^[+-]?[0-9.]*$/) >= 0);
}

/*** 返回字节数 ***/
String.prototype.lenb = function() {
  return this.replace(/[^\x00-\xff]/g,"**").length;
}

/*** 检查是否包含汉字 ***/
String.prototype.isInChinese = function() {
  return (this.length != this.replace(/[^\x00-\xff]/g,"**").length);
}

/*** 简单的email检查 ***/
String.prototype.isEmail = function() {
 var strr;
  var mail = this;
 var re = /(\w+@\w+\.\w+)(\.{0,1}\w*)(\.{0,1}\w*)/i;
 re.exec(mail);
 if(RegExp.$3!="" && RegExp.$3!="." && RegExp.$2!=".")
    strr = RegExp.$1+RegExp.$2+RegExp.$3;
 else
  if(RegExp.$2!="" && RegExp.$2!=".")
      strr = RegExp.$1+RegExp.$2;
  else
     strr = RegExp.$1;
 return (strr==mail);
}

/*** 简单的日期检查,成功返回日期对象 ***/
String.prototype.isDate = function() {
  var p;
  var re1 = /(\d{4})[年./-](\d{1,2})[月./-](\d{1,2})[日]?$/;
  var re2 = /(\d{1,2})[月./-](\d{1,2})[日./-](\d{2})[年]?$/;
  var re3 = /(\d{1,2})[月./-](\d{1,2})[日./-](\d{4})[年]?$/;
  if(re1.test(this)) {
    p = re1.exec(this);
    return new Date(p[1],p[2],p[3]);
  }
  if(re2.test(this)) {
    p = re2.exec(this);
    return new Date(p[3],p[1],p[2]);
  }
  if(re3.test(this)) {
    p = re3.exec(this);
    return new Date(p[3],p[1],p[2]);
  }
  return false;
}

/*** 检查是否有列表中的字符字符 ***/
String.prototype.isInList = function(list) {
  var re = eval("/["+list+"]/");
  return re.test(this);
}

相关文章

  • 完美解决IE9浏览器出现的对象未定义问题

    完美解决IE9浏览器出现的对象未定义问题

    下面小编就为大家带来一篇完美解决IE9浏览器出现的对象未定义问题。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,祝大家游戏愉快哦
    2016-09-09
  • bootstrap改变按钮加载状态

    bootstrap改变按钮加载状态

    这篇文章主要介绍了bootstrap改变按钮加载状态的方法,需要的朋友可以参考下
    2014-12-12
  • mapboxgl区划标签避让不遮盖实现的代码详解

    mapboxgl区划标签避让不遮盖实现的代码详解

    Mapbox是一个可以免费创建并定制个性化地图的网站。这篇文章主要介绍了mapboxgl区划标签避让不遮盖实现方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • 微信小程序 网络通信实现详解

    微信小程序 网络通信实现详解

    这篇文章主要介绍了微信小程序 网络通信实现详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • js实现漂浮回顶部按钮实例

    js实现漂浮回顶部按钮实例

    这篇文章主要介绍了js实现漂浮回顶部按钮的方法,实例分析了javascript实现返回顶部功能的样式与动态实现技巧,非常具有实用价值,需要的朋友可以参考下
    2015-05-05
  • 根据一段代码浅谈Javascript闭包

    根据一段代码浅谈Javascript闭包

    水平不高,不能也不想从太深的层次去讲解这个东西,只是根据一段比较有代表性的代码,结合执行结果,从表象上粗浅地谈谈。
    2010-12-12
  • laydate只显示时分 不显示秒的功能实现方法

    laydate只显示时分 不显示秒的功能实现方法

    今天小编就为大家分享一篇laydate只显示时分 不显示秒的功能实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-09-09
  • layui下拉框获取下拉值(select)的例子

    layui下拉框获取下拉值(select)的例子

    今天小编就为大家分享一篇layui下拉框获取下拉值(select)的例子,具有好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-09-09
  • javascript从定义到执行 你不知道的那些事

    javascript从定义到执行 你不知道的那些事

    这篇文章主要介绍了javascript从定义到执行,你不知道的那些事,感兴趣的小伙伴们可以参考一下
    2016-01-01
  • Javascript中的神器——Promise

    Javascript中的神器——Promise

    本文主要介绍了Javascript中Promise的相关知识。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02

最新评论