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 相关文章推荐
编写高性能的JavaScript 脚本的加载与执行
Apr 19 Javascript
JavaScript中使用Object.prototype.toString判断是否为数组
Apr 01 Javascript
javascript作用域链(Scope Chain)用法实例解析
Nov 30 Javascript
jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用
Jan 23 Javascript
轻松5句话解决JavaScript的作用域
Jul 15 Javascript
微信小程序 POST请求(网络请求)详解及实例代码
Nov 16 Javascript
JS作用域闭包、预解释和this关键字综合实例解析
Dec 16 Javascript
深入理解ES6的迭代器与生成器
Aug 19 Javascript
微信小程序 swiper组件构建轮播图的实例
Sep 20 Javascript
基于vue2.0动态组件及render详解
Mar 17 Javascript
纯JS开发baguetteBox.js响应式画廊插件
Jun 28 Javascript
Vue CLI中模式与环境变量的深入详解
May 30 Vue.js
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 过滤器实现代码
2010/08/09 PHP
PHP使用正则表达式清除超链接文本
2013/11/12 PHP
php正则表达式使用方法整理集合
2020/01/31 PHP
PHP 命名空间和自动加载原理与用法实例分析
2020/04/29 PHP
基于jquery的cookie的用法
2011/01/10 Javascript
JavaScript调用ajax获取文本文件内容实现代码
2014/03/28 Javascript
Jquery 返回json数据在IE浏览器中提示下载的问题
2014/05/18 Javascript
简介JavaScript中的setHours()方法的使用
2015/06/11 Javascript
详解AngularJS中module模块的导入导出
2015/12/10 Javascript
BootStrap Progressbar 实现大文件上传的进度条的实例代码
2016/06/27 Javascript
概述BootStrap中role=&quot;form&quot;及role作用角色
2016/12/08 Javascript
jQuery实现的手风琴侧边菜单效果
2017/03/29 jQuery
利用forever和pm2部署node.js项目过程
2017/05/10 Javascript
jQuery自定义多选下拉框效果
2017/06/19 jQuery
JS实现下拉菜单列表与登录注册弹窗效果
2017/08/10 Javascript
JavaScript你不知道的一些数组方法
2017/08/18 Javascript
使用JavaScript生成罗马字符的实例代码
2018/06/08 Javascript
Python虚拟环境virtualenv的安装与使用详解
2017/05/28 Python
基于numpy.random.randn()与rand()的区别详解
2018/04/17 Python
详解python异步编程之asyncio(百万并发)
2018/07/07 Python
Python 存储字符串时节省空间的方法
2019/04/23 Python
pyqt5 实现在别的窗口弹出进度条
2019/06/18 Python
解决python 文本过滤和清理问题
2019/08/28 Python
详解opencv中画圆circle函数和椭圆ellipse函数
2019/12/27 Python
Python绘制全球疫情变化地图的实例代码
2020/04/20 Python
Python如何定义有默认参数的函数
2020/08/10 Python
使用Vue.js和MJML创建响应式电子邮件
2021/03/23 Vue.js
自主招生自荐书
2013/11/29 职场文书
财务管理职业生涯规划范文
2013/12/27 职场文书
对孩子的寄语
2014/04/09 职场文书
防沙治沙典型材料
2014/05/07 职场文书
人事局接收函
2015/01/31 职场文书
国家助学金受助感言
2015/08/01 职场文书
python如何读取.mtx文件
2021/04/22 Python
pytorch 中autograd.grad()函数的用法说明
2021/05/12 Python
聊聊配置 Nginx 访问与错误日志的问题
2022/05/25 Servers