//封装StringBuilder

function StringBuilder() { this._string_ = new Array(); }

StringBuilder.prototype.Append = function (str) { this._string_.push(str); }

StringBuilder.prototype.toString = function () { return this._string_.join(""); }

//trim去掉字符串两边的指定字符,默去空格

String.prototype.Trim = function (str) { if (!str) { str = '\\s'; } else { if (str == '\\') { str = '\\\\'; } else if (str == ',' || str == '|' || str == ';') { str = '\\' + str; } else { str = '\\s'; } } eval('var reg=/(^' + str + '+)|(' + str + '+$)/g;'); return this.replace(reg, ''); };

String.prototype.trim = function (str) { return this.Trim(str); };

//判断一个字符串是否为NULL或者空字符串

String.prototype.isNull = function () { return this == null || this.trim().length == 0; }

String.prototype.equals = function (str) { return this == str; }

//字符串截取后面加入...

String.prototype.interceptString = function (len) {

if (this.length > len) {

return this.substring(0, length - 1) + "...";

}

else {

return this;

}

}

//获得一个字符串的字节数

String.prototype.countLength = function () { var strLength = 0; for (var i = 0; i < this.length; i++) { if (this.charAt(i) > '~') strLength += 2; else strLength += 1; } return strLength; }

//根据指定的字节数截取字符串

String.prototype.cutString = function (cutLength) { if (!cutLength) { cutLength = this.countLength(); } var strLength = 0; var cutStr = ""; if (cutLength > this.countLength()) { cutStr = this; } else { for (var i = 0; i < this.length; i++) { if (this.charAt(i) > '~') { strLength += 2; } else { strLength += 1; } if (strLength >= cutLength) { cutStr = this.substring(0, i + 1); break; } } } return cutStr; };

//关于链接的操作命名空间

var Link = {};

//把一个字符串变成链接

Link.Filter = function (str) {

var urlReg = /http(s)?:\/\/([\w-]+\.)+[\w-]+(\/[\w- .\/?%&=])?[^ <>\[\]*(){}\u4E00-\u9FA5]+/gi;   //lio 2012-4-25 eidt   //         /^[\u4e00-\u9fa5\w]+$/;\u4E00-\u9FA5

return str.replace(urlReg, function (m) { return '<a target="_blank" href="' + m + '">' + m + '</a>'; });

}

//验证一个字符串时候是email

RegExp.isEmail = function (str) {

var emailReg = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)*\.[\w-]+$/i;

return emailReg.test(str);

}

//验证一个字符串是否是URL

RegExp.isUrl = function (str) {

var patrn = /^http(s)?:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\:+!]*([^<>])*$/;

return patrn.exec(str);

}

//验证一个字符串是否是电话或传真

RegExp.isTel = function (str) {

var pattern = /^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;

return pattern.exec(str);

}

//验证一个字符串是否是手机号码

RegExp.isMobile = function (str) {

var patrn = /^((13[0-9])|(15[0-35-9])|(18[0,2,3,5-9]))\d{8}$/;

return patrn.exec(str);

}

//验证一个字符串是否是汉字

RegExp.isZHCN = function (str) {

var p = /^[\u4e00-\u9fa5\w]+$/;

return p.exec(str);

}

//验证一个字符串是否是数字

RegExp.isNum = function (str) {

var p = /^\d+$/;

return p.exec(str);

}

//验证一个字符串是否是纯英文

RegExp.isEnglish = function (str) {

var p = /^[a-zA-Z., ]+$/;

return p.exec(str);

}

// 判断是否为对象类型

RegExp.isObject = function (obj) {

return (typeof obj == 'object') && obj.constructor == Object;

}

//验证字符串是否不包含特殊字符 返回bool

RegExp.isUnSymbols = function (str) {

var p = /^[\u4e00-\u9fa5\w \.,(),ê?。¡ê(ê¡§)ê?]+$/;

return p.exec(str);

}

//将一个字符串用给定的字符变成数组,

String.prototype.toArray = function (str) {

if (this.indexOf(str) != -1) {

return this.split(str);

}

else {

if (this != '') {

return [this.toString()];

}

else {

return [];

}

}

};

//根据数据取得再数组中的索引

Array.prototype.getIndex = function (obj) {

for (var i = 0; i < this.length; i++) {

if (obj == this[i] || obj.equals(this[i])) {

return i;

}

}

return -1;

}

//移除数组中的某元素

Array.prototype.remove = function (obj) {

for (var i = 0; i < this.length; i++) {

if (obj.equals(this[i])) {

this.splice(i, 1);

break;

}

}

return this;

};

//判断元素是否在数组中

Array.prototype.contains = function (obj) {

for (var i = 0; i < this.length; i++) {

if (obj == this[i] || obj.equals(this[i])) {

return true;

}

}

return false;

};

js一些通用方法的封装的更多相关文章

  1. js常用通用方法

    验证身份证详细方法 function isCardNo(pId) { var arrVerifyCode = [1, 0, "x", 9, 8, 7, 6, 5, 4, 3, 2] ...

  2. JS中数组方法的封装之slice

    slice方法的功能 // 1) : 数组的截取 // 2) :slice(m,n): 从数组索引m开始,截取到索引n,但是不包含n;[前包后不包] // slice(m) : 从索引m开始,截取到末 ...

  3. jsonp跨域 封装通用方法

    jsonp跨域 封装通用方法 //用法如下 jsonp({ url:"https://www.xxxx.com", params:{wd:'b'}, callback:'show' ...

  4. 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_4-3.登录检验JWT实战之封装通用方法

    笔记 3.登录检验JWT实战之封装通用方法     讲解:引入相关依赖并开发JWT工具类 1.加入相关依赖 <!-- JWT相关 -->             <dependenc ...

  5. js方法的封装

    封装是为了更好的调用,当我们很多页面都需要同一种方法的时候,为了避免每个页面都需要进行重写方法,增加工作量,这个时候就需要我们对部分公共的方法进行封装,这样便于更好的进行调用 我在写接口的时候用到了 ...

  6. js添加事件通用方法

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. 【CSS进阶】原生JS getComputedStyle等方法解析

    最近一直在研读 jQuery 源码,初看源码一头雾水毫无头绪,真正静下心来细看写的真是精妙,让你感叹代码之美. 其结构明晰,高内聚.低耦合,兼具优秀的性能与便利的扩展性,在浏览器的兼容性(功能缺陷.渐 ...

  8. .NET基础架构方法—DataTableToExcel通用方法

    p { display: block; margin: 3px 0 0 0; } --> .NET架构基础方法—DataTableToExcel通用方法(NPOI) 今天封装DataTaleTo ...

  9. 使用 highchart 绘制柱状图的通用方法与接口

    本文给出使用 highchart 绘制柱状图的通用方法与接口, 只要指定相应的数据结构和配置, 就可以直接拿来使用. 一.  数据结构与基本接口   一般绘制图形, 会涉及到较复杂的数据结构, 比如使 ...

随机推荐

  1. NSRunLoop(来自官方文档)

    The NSRunLoop class declares the programmatic interface to objects that manage input sources. An NSR ...

  2. VNC-Server installation on CentOS 7

    参考资料: https://www.howtoforge.com/vnc-server-installation-on-centos-7 https://linux.cn/article-5335-1 ...

  3. svn和git比较

    svn有哪些优点和缺点? git有哪些优点和缺点? git最突然的优点就是gitflow,开发新的功能都是开一个新分支feature,完成开发新特性,合并到develop分支:提交测试也是新增一个分支 ...

  4. 使用FileResult返回浏览器文件及乱码问题解决

    一.向客户端发送文件方法 Asp.Net 中返回文件方法 public void TxtFile(string filename) { //html文件 string path = @"E: ...

  5. Android NDK编程,引入第三方.so库

    android自带的编译工具NDK进行编译时(非单纯的调用第三方.so而是进行ndk编程),armeabi以及armeabi-v7a文件夹下的第三方so文件将会被删除,只会产生编译后的so文件,其他的 ...

  6. XFire构建服务端Service的两种方式

    1.原声构建: 2.集成spring构建 http://blog.csdn.net/carefree31441/article/details/4000436XFire构建服务端Service的两种方 ...

  7. PHP XML Parser

    安装 XML Parser 函数是 PHP 核心的组成部分.无需安装即可使用这些函数. PHP XML Parser 函数 PHP:指示支持该函数的最早的 PHP 版本. 函数 描述 PHP utf8 ...

  8. mysql window下tmpdir空间耗尽

    修改my.ini或my-default.ini文件[mysqld]下方配置 tmpdir = D:/tmp

  9. 【转载】Express、Koa、Hapi框架对比

    中文翻译:http://ourjs.com/detail/5490db1c8a34fa320400000e 英文原文:https://www.airpair.com/node.js/posts/nod ...

  10. 带格式导出数据到Excel

    导出按钮事件 protected void Button1_Click(object sender, EventArgs e)    {        Response.Clear();        ...