js原型链扩展一些很实用的方法:
/**
* 格式化日期
* @param format
* @returns
*/
Date.prototype.format = function(format) {
var o = {
"M+" : this.getMonth() + 1, // month
"d+" : this.getDate(), // day
"h+" : this.getHours(), // hour
"m+" : this.getMinutes(), // minute
"s+" : this.getSeconds(), // second
"q+" : Math.floor((this.getMonth() + 3) / 3), // quarter
"S" : this.getMilliseconds()
// millisecond
};
if (/(y+)/.test(format)) {
format = format.replace(RegExp.$1, (this.getFullYear() + "")
.substr(4 - RegExp.$1.length));
}
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;
};
//使用
alert(new Date().format("yyyy-MM-dd"))
/**
* js原型链实现replaceAll
*/
String.prototype.replaceAll = function(s1,s2){
return this.replace(new RegExp(s1,"gm"),s2);
};
/**
* js实现endWith
*/
String.prototype.endWith=function(str){
if(str==null||str==""||this.length==0||str.length>this.length)
return false;
if(this.substring(this.length-str.length)==str)
return true;
else
return false;
return true;
}
/**
* js实现startWith
*/
String.prototype.startWith=function(str){
if(str==null||str==""||this.length==0||str.length>this.length)
return false;
if(this.substr(0,str.length)==str)
return true;
else
return false;
return true;
}
/**
* 数组扩展---根据下标删除某元素
*/
Array.prototype.del=function(n) {
if(n<0) return this;
else
return this.slice(0,n).concat(this.slice(n+1,this.length));
};
/**
* 数组扩展---根据一个值删除某元素
*/
Array.prototype.delByValue=function(value) {
for(var i = 0;i<this.length;i++){
if(this[i] == value){
this.del(i);
}
}
};
/**
* 数组扩展判断某值知否在数组中
*/
Array.prototype.isContainsValue=function(value) {
for(var i in this){
if(this[i]==value){
return true;
}
}
return false;
};
/**
* js阻止冒泡事件
*/
function stopPropagation(e) {
e = e || window.event;
if(e.stopPropagation) { //W3C阻止冒泡方法
e.stopPropagation();
} else {
e.cancelBubble = true; //IE阻止冒泡方法
}
}
来自个人博客
http://www.rguess.com/blog/article/49.html 求关注
分享到:
相关推荐
javascript string和array常用扩展方法
js扩展方法实例说明
扩展jquery的ajax方法,可以处理一些ajax请求的共通问题,比如ajax请求出错之后跳转的问题。
de.js是一个轻量级的javascript扩展函数库,通过扩展页面元素的方法和属性、和扩展javascript内置类型的方法来帮助web前端开发人员实现更便捷和高效的编程。以下是主要特点: 支持类似jquery的选择器,同时支持类似...
一次在Iteye上面看到的一个帖子觉得写得非常好,就复制下来,本来留到自己以后慢慢用,我想很多朋友应该也需要的,就传上来分享一下
本文实例讲述了js实现prototype扩展的方法。分享给大家供大家参考,具体如下: String.prototype.isEmpty = function () { return !(/.?[^/s ]+/.test(this)); } //检测字符串是否为空 // 替换字符 String....
android studio 1.0.2工程。javascript调用android中的java方法。
现包含用户名、密码、密码一致性、电话、身份证、简单的空值验证... 可以自己很轻松地添加正则验证和自定义验证函数,调用方法简单方便 现在分享出来给大家参考
js-metrics-extension自述文件这是扩展名“ js-metrics-extension”的自述文件。 写下简短描述后,我们建议包括以下各节。特征描述扩展程序的特定功能,包括扩展程序的屏幕截图。 图像路径是相对于此README文件的。 ...
javascript date类的扩展
d3.js Extended:扩展D3包含一些常见的jQuery函数
基于安卓平台的JavaScript扩展对象实现方法及绑定接口结构
Js-$.extend扩展方法使方法参数更灵活.docx
具体扩展的方法如下: parseCHS--静态方法。解析常用的中文日期并返回日期对象。 add--日期加减操作。[注:此函数在上传时还存在一个BUG。请下载后把此函数内的第一行"var regExp = /^\d+$/;" 改为 "var ...
1、js异步上传图片文件 2、C#类扩展方法obtojson 等等object的扩展方法
本文介绍了如何利用C++对wekbit的javascrpit进行扩展到方法...
javascript的Array没有contains方法,有时候这会不方便,contains方法实现很简单: 代码如下: function contains(a, obj) { var i = a.length; while (i–) { if (a[i] === obj) { return true; } } ...
本文实例讲述了JS扩展方法实现技巧。分享给大家供大家参考。具体分析如下: JS扩展方法与C#的扩展方法非常相似,也是可以链式调用的,也是通过对某个类的扩展写法来实现。这个东西非常好用,如果将预先写好的方法放...
JavaScript数组some()方法测试数组中的某个元素...这个方法是一个JavaScript扩展到ECMA-262标准; 因此它可能不存在在标准的其他实现。为了使它工作,你需要添加下面的脚本代码放到顶部: if (!Array.prototype.some