JavaScript 方法扩展

一、String全部替换方法

String.prototype.replaceAll = function(s1, s2){
    return this.replace(new RegExp(s1, "gm"), s2);
}

二、获取对象指定下标的属性名和属性值(默认获取第一个属性)

Object.prototype.getPropertyKey = function(index) {
  var idx = 0;
  for (var key in this) {
    if (!index || index === idx) {
      return key;
    }
    idx ++;
  }
};
Object.prototype.getPropertyValue = function(index) {
  var idx = 0;
  for (var key in this) {
    if (!index || index === idx) {
      return this[key];
    }
    idx ++;
  }
};

三、日期格式化(date.format("yyyy-MM-dd")

Date.prototype.format = function(fmt) { 
    var o = { 
        "M+" : this.getMonth()+1,                 //月份 
        "d+" : this.getDate(),                    //日 
        "h+" : this.getHours(),                   //小时 
        "m+" : this.getMinutes(),                 //分 
        "s+" : this.getSeconds(),                 //秒 
        "q+" : Math.floor((this.getMonth()+3)/3), //季度 
        "S"  : this.getMilliseconds()             //毫秒 
    }; 
    if(/(y+)/.test(fmt)) {
        fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length)); 
    }
    for(var k in o) {
        if(new RegExp("("+ k +")").test(fmt)){
            fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
        }
    }
    return fmt;
}

  

原文地址:https://www.cnblogs.com/guxuelong/p/8556281.html