如何使用javascript字符串数字作补位,右补位,取固定长度?
如何使用javascript字符串数字作补位,右补位,取固定长度?
有时候我们的日期等不足两位的补一个0等,都可以使用这个。
这个大家应该都很明白了,就不废话了,代码如下:
String.prototype.padLeft = Number.prototype.padLeft = function(total, pad) { return (Array(total).join(pad || 0) + this).slice(-total); }
测试代码:
//补位 "X".padLeft(5, "Y"); //返回:YYYYX (50).padLeft(5); //返回:00050 var x = 1; x.padLeft(2); //返回:01 //截位 (123).padLeft(2); //返回:23
更多代码
/** * 取子字符串 * @param oriStr 原字符串 * @param beginIndex 取子串的起始位置 * @param len 取子串的长度 * @return 子字符串 */ public String subString(String oriStr,int beginIndex,int len){ int strlen = oriStr.length(); beginIndex = beginIndex -1; if(strlen <= beginIndex){ System.out.println("out of " + oriStr + "'s length, please recheck!"); }else if(strlen <= beginIndex+len){ str = oriStr.substring(beginIndex); }else{ str = oriStr.substring(beginIndex, beginIndex+len); } return str; } /** * 右补位,左对齐 * @param oriStr 原字符串 * @param len 目标字符串长度 * @param alexin 补位字符 * @return 目标字符串 */ public String padRight(String oriStr,int len,char alexin){ int strlen = oriStr.length(); if(strlen < len){ for(int i=0;i<len-strlen;i++){ str = str+alexin; } } str = str + oriStr; return str; } /** * 左补位,右对齐 * @param oriStr 原字符串 * @param len 目标字符串长度 * @param alexin 补位字符 * @return 目标字符串 */ public String padLeft(String oriStr,int len,char alexin){ int strlen = oriStr.length(); if(strlen < len){ for(int i=0;i<len-strlen;i++){ str = str+alexin; } } str = oriStr + str; return str; }