JS中字符串trim()使用示例


Posted in Javascript onMay 26, 2015

示例一:

<head>
  <title>测试JS扩展方法</title>
  <script type="text/javascript">
    // 合并多个空白为一个空白 
    String.prototype.ResetBlank = function() {    //对字符串扩展
      var regEx = /\s+/g; 
      return this.replace(regEx, ' '); 
    }; 

    window.onload = function()
    {
      var str = "你   在他想还好吗?";
      alert(str);
      str = str.ResetBlank();    //这样就能够调用了,跟C#的很像吧!
      alert(str);
    }
  </script>
</head>

示例二:

// 清除两边的空格 
String.prototype.trim = function() { 
  return this.replace(/(^\s*)|(\s*$)/g, ''); 
}; 
// 合并多个空白为一个空白 
String.prototype.ResetBlank = function() { 
  var regEx = /\s+/g; 
  return this.replace(regEx, ' '); 
}; 
 
// 保留数字 
String.prototype.GetNum = function() { 
  var regEx = /[^\d]/g; 
  return this.replace(regEx, ''); 
}; 
 
// 保留中文 
String.prototype.GetCN = function() { 
  var regEx = /[^\u4e00-\u9fa5\uf900-\ufa2d]/g; 
  return this.replace(regEx, ''); 
}; 
 
// String转化为Number 
String.prototype.ToInt = function() { 
  return isNaN(parseInt(this)) ? this.toString() : parseInt(this); 
}; 
 
// 得到字节长度 
String.prototype.GetLen = function() { 
  var regEx = /^[\u4e00-\u9fa5\uf900-\ufa2d]+$/; 
  if (regEx.test(this)) { 
    return this.length * 2; 
  } else { 
    var oMatches = this.match(/[\x00-\xff]/g); 
    var oLength = this.length * 2 - oMatches.length; 
    return oLength; 
  } 
}; 
 
// 获取文件全名 
String.prototype.GetFileName = function() { 
  var regEx = /^.*\/([^\/\?]*).*$/; 
  return this.replace(regEx, '$1'); 
}; 
 
// 获取文件扩展名 
String.prototype.GetExtensionName = function() { 
  var regEx = /^.*\/[^\/]*(\.[^\.\?]*).*$/; 
  return this.replace(regEx, '$1'); 
}; 
 
//替换所有
String.prototype.replaceAll = function(reallyDo, replaceWith, ignoreCase) { 
  if (!RegExp.prototype.isPrototypeOf(reallyDo)) { 
    return this.replace(new RegExp(reallyDo, (ignoreCase ? "gi" : "g")), replaceWith); 
  } else { 
    return this.replace(reallyDo, replaceWith); 
  } 
}; 
//格式化字符串 add By 刘景宁 2010-12-09  
String.Format = function() { 
  if (arguments.length == 0) { 
    return ''; 
  } 
 
  if (arguments.length == 1) { 
    return arguments[0]; 
  } 
 
  var reg = /{(\d+)?}/g; 
  var args = arguments; 
  var result = arguments[0].replace(reg, function($0, $1) { 
    return args[parseInt($1) + 1]; 
  }); 
  return result; 
}; 
 
// 数字补零 
Number.prototype.LenWithZero = function(oCount) { 
  var strText = this.toString(); 
  while (strText.length < oCount) { 
    strText = '0' + strText; 
  } 
  return strText; 
}; 
 
// Unicode还原 
Number.prototype.ChrW = function() { 
  return String.fromCharCode(this); 
}; 
 
// 数字数组由小到大排序 
Array.prototype.Min2Max = function() { 
  var oValue; 
  for (var i = 0; i < this.length; i++) { 
    for (var j = 0; j <= i; j++) { 
      if (this[i] < this[j]) { 
        oValue = this[i]; 
        this[i] = this[j]; 
        this[j] = oValue; 
      } 
    } 
  } 
  return this; 
}; 
 
// 数字数组由大到小排序 
Array.prototype.Max2Min = function() { 
  var oValue; 
  for (var i = 0; i < this.length; i++) { 
    for (var j = 0; j <= i; j++) { 
      if (this[i] > this[j]) { 
        oValue = this[i]; 
        this[i] = this[j]; 
        this[j] = oValue; 
      } 
    } 
  } 
  return this; 
}; 
 
// 获得数字数组中最大项 
Array.prototype.GetMax = function() { 
  var oValue = 0; 
  for (var i = 0; i < this.length; i++) { 
    if (this[i] > oValue) { 
      oValue = this[i]; 
    } 
  } 
  return oValue; 
}; 
 
// 获得数字数组中最小项 
Array.prototype.GetMin = function() { 
  var oValue = 0; 
  for (var i = 0; i < this.length; i++) { 
    if (this[i] < oValue) { 
      oValue = this[i]; 
    } 
  } 
  return oValue; 
}; 
 
// 获取当前时间的中文形式 
Date.prototype.GetCNDate = function() { 
  var oDateText = ''; 
  oDateText += this.getFullYear().LenWithZero(4) + new Number(24180).ChrW(); 
  oDateText += this.getMonth().LenWithZero(2) + new Number(26376).ChrW(); 
  oDateText += this.getDate().LenWithZero(2) + new Number(26085).ChrW(); 
  oDateText += this.getHours().LenWithZero(2) + new Number(26102).ChrW(); 
  oDateText += this.getMinutes().LenWithZero(2) + new Number(20998).ChrW(); 
  oDateText += this.getSeconds().LenWithZero(2) + new Number(31186).ChrW(); 
  oDateText += new Number(32).ChrW() + new Number(32).ChrW() + new Number(26143).ChrW() + new Number(26399).ChrW() + new String('26085199682010819977222352011620845').substr(this.getDay() * 5, 5).ToInt().ChrW(); 
  return oDateText; 
}; 
//扩展Date格式化 
Date.prototype.Format = function(format) { 
  var o = { 
    "M+": this.getMonth() + 1, //月份      
    "d+": this.getDate(), //日      
    "h+": this.getHours() % 12 == 0 ? 12 : this.getHours() % 12, //小时      
    "H+": this.getHours(), //小时      
    "m+": this.getMinutes(), //分      
    "s+": this.getSeconds(), //秒      
    "q+": Math.floor((this.getMonth() + 3) / 3), //季度      
    "S": this.getMilliseconds() //毫秒      
  }; 
  var week = { 
    "0": "\u65e5", 
    "1": "\u4e00", 
    "2": "\u4e8c", 
    "3": "\u4e09", 
    "4": "\u56db", 
    "5": "\u4e94", 
    "6": "\u516d" 
  }; 
  if (/(y+)/.test(format)) { 
    format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); 
  } 
  if (/(E+)/.test(format)) { 
    format = format.replace(RegExp.$1, ((RegExp.$1.length > 1) ? (RegExp.$1.length > 2 ? "\u661f\u671f" : "\u5468") : "") + week[this.getDay() + ""]); 
  } 
  for (var k in o) { 
    if (new RegExp("(" + k + ")").test(format)) { 
      format = format.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); 
    } 
  } 
  return format; 
} 
Date.prototype.Diff = function(interval, objDate) { 
  //若参数不足或 objDate 不是日期类型?t回传 undefined 
  if (arguments.length < 2 || objDate.constructor != Date) { return undefined; } 
  switch (interval) { 
    //计算秒差                             
    case 's': return parseInt((objDate - this) / 1000); 
      //计算分差 
    case 'n': return parseInt((objDate - this) / 60000); 
      //计算?r差 
    case 'h': return parseInt((objDate - this) / 3600000); 
      //计算日差 
    case 'd': return parseInt((objDate - this) / 86400000); 
      //计算周差 
    case 'w': return parseInt((objDate - this) / (86400000 * 7)); 
      //计算月差 
    case 'm': return (objDate.getMonth() + 1) + ((objDate.getFullYear() - this.getFullYear()) * 12) - (this.getMonth() + 1); 
      //计算年差 
    case 'y': return objDate.getFullYear() - this.getFullYear(); 
      //输入有误 
    default: return undefined; 
  } 
}; 
 
//检测是否为空 
Object.prototype.IsNullOrEmpty = function() { 
  var obj = this; 
  var flag = false; 
  if (obj == null || obj == undefined || typeof (obj) == 'undefined' || obj == '') { 
    flag = true; 
  } else if (typeof (obj) == 'string') { 
    obj = obj.trim(); 
    if (obj == '') {//为空 
      flag = true; 
    } else {//不为空 
      obj = obj.toUpperCase(); 
      if (obj == 'NULL' || obj == 'UNDEFINED' || obj == '{}') { 
        flag = true; 
      } 
    } 
  } 
  else { 
    flag = false; 
  } 
  return flag;

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
JQuery 动态扩展对象之另类视角
May 25 Javascript
js获取元素在浏览器中的绝对位置
Jul 24 Javascript
Jquery实现点击切换图片并隐藏显示内容(2种方法实现)
Apr 11 Javascript
jQuery之自动完成组件的深入解析
Jun 19 Javascript
Jquery判断radio、selelct、checkbox是否选中及获取选中值方法总结
Apr 15 Javascript
jQuery 判断元素整理汇总
Feb 28 Javascript
ES6新特性五:Set与Map的数据结构实例分析
Apr 21 Javascript
vue2.0 路由不显示router-view的解决方法
Mar 06 Javascript
vue通过滚动行为实现从列表到详情,返回列表原位置的方法
Aug 31 Javascript
layer.open的自适应及居中及子页面标题的修改方法
Sep 05 Javascript
vue实现PC端分辨率适配操作
Aug 03 Javascript
React Ant Design树形表格的复杂增删改操作
Nov 02 Javascript
JSON字符串和对象之间的转换详解
May 26 #Javascript
Js和JQuery获取鼠标指针坐标的实现代码分享
May 25 #Javascript
Javascript实现飞动广告效果的方法
May 25 #Javascript
javascript自定义右键弹出菜单实现方法
May 25 #Javascript
JS+DIV实现鼠标划过切换层效果的方法
May 25 #Javascript
JavaScript实现仿网易通行证表单验证
May 25 #Javascript
js+cookies实现悬浮购物车的方法
May 25 #Javascript
You might like
php下正则来匹配dede模板标签的代码
2010/08/21 PHP
解析php常用image图像函数集
2013/06/24 PHP
PHP连接sql server 2005环境配置及问题解决
2014/08/08 PHP
Yii框架调试心得--在页面输出执行sql语句
2014/12/25 PHP
php常用图片处理类
2016/03/16 PHP
php正则判断是否为合法身份证号的方法
2017/03/16 PHP
PHP使用pdo实现事务处理操作示例
2018/09/05 PHP
php集成开发环境详解
2019/09/24 PHP
laravel框架中视图的基本使用方法分析
2019/11/23 PHP
JavaScript的面向对象方法以及差别
2008/03/31 Javascript
prototype Element学习笔记(Element篇三)
2008/10/26 Javascript
js模拟hashtable的简单实例
2014/03/06 Javascript
js 判断图片是否加载完以及实现图片的预下载
2014/08/14 Javascript
浅析JS运动
2015/12/28 Javascript
前端jquery部分很精彩
2016/05/03 Javascript
前端微信支付js代码
2016/07/25 Javascript
Vue.js列表渲染绑定jQuery插件的正确姿势
2017/06/29 jQuery
详解vue-cli 构建Vue项目遇到的坑
2017/08/30 Javascript
在vue项目中安装使用Mint-UI的方法
2017/12/27 Javascript
elementUI 动态生成几行几列的方法示例
2019/07/11 Javascript
通过微信公众平台获取公众号文章的方法示例
2019/12/25 Javascript
Js实现粘贴上传图片的原理及示例
2020/12/09 Javascript
[05:42]DOTA2英雄梦之声_第10期_蝙蝠骑士
2014/06/21 DOTA
[00:27]DOTA2战队VP、Secret贺新春
2018/02/11 DOTA
在Python中使用列表生成式的教程
2015/04/27 Python
基于django channel实现websocket的聊天室的方法示例
2019/04/11 Python
对python中的控制条件、循环和跳出详解
2019/06/24 Python
Python中的相关分析correlation analysis的实现
2019/08/29 Python
pytorch 实现打印模型的参数值
2019/12/30 Python
Pytorch evaluation每次运行结果不同的解决
2020/01/02 Python
世界上最大的在线旅行社新加坡网站:Expedia新加坡
2016/08/25 全球购物
mysql_pconnect()和mysql_connect()有什么区别
2012/05/25 面试题
建筑工程技术应届生自荐信
2013/09/27 职场文书
幼儿园师德演讲稿
2014/05/06 职场文书
现场活动策划方案
2014/08/22 职场文书
淘宝客服专员岗位职责
2015/04/07 职场文书