有时候我们的日期等不足两位的补一个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); //返 在JavaScript编程语言中,有时我们需要对字符串或数字进行格式化处理,例如在显示日期时,可能需要确保每个部分都有固定的宽度。在这种情况下,左补位和右补位操作变得非常有用。本文将介绍如何实现这些功能,并提供相关扩展函数的代码示例。 我们来看一个JavaScript中的字符串补位函数,它可以用于数字或字符串的左补位和右补位。这个功能可以通过扩展`String.prototype`和`Number.prototype`来实现。下面的代码定义了一个名为`padLeft`的方法: ```javascript String.prototype.padLeft = Number.prototype.padLeft = function(total, pad) { return (Array(total).join(pad || 0) + this).slice(-total); } ``` 这个方法接受两个参数:`total`表示目标总长度,`pad`是填充字符,默认为0。它首先创建一个数组,数组的长度等于`total`,然后用`pad`字符填充数组,最后将原始字符串添加到填充后的数组并切片得到结果。 例如,`"X".padLeft(5, "Y")`将返回`"YYYYX"`,`"(50)".padLeft(5)`将返回`"00050"`。对于数字,如`var x = 1; x.padLeft(2)`将返回`"01"`。 除了补位,我们还可能需要截取字符串。下面是一个Java的子字符串获取函数,它允许指定起始位置和长度: ```java 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; } ``` 此函数检查输入的起始位置和长度是否合理,然后返回指定长度的子字符串。 另外,为了完成右补位(左对齐)和左补位(右对齐),我们可以编写以下两个Java函数: ```java 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 += alexin; } } str += oriStr; return str; } 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 += alexin; } } str = oriStr + str; return str; } ``` 这两个函数接受原字符串、目标长度和填充字符作为参数,如果原字符串长度小于目标长度,它们会在原字符串的右侧或左侧添加填充字符,直到达到指定的长度。 这些函数在处理格式化输出时非常实用,比如在日期、时间、编号等方面。通过使用这些方法,我们可以确保数据以一致且美观的方式呈现,同时保持代码的简洁性。在实际项目中,可以根据需求进一步优化和扩展这些函数,以满足更复杂的需求。
- 粉丝: 7
- 资源: 915
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于微信小程序的外卖点餐系统设计与实现ssm.zip
- java项目,毕业设计-小学家校一体“作业帮”的设计与实现
- 外卖小程序ssm.zip
- 数端子PIN数裁切后叠设备sw12可编辑全套技术开发资料100%好用.zip
- 垃圾分类小程序ssm.zip
- 微信小程序书店springboot.zip
- 食堂校园预约就餐小程序ssm.zip
- 教育培训微信小程序ssm.zip
- 将qt编写的应用程序,通过nssm做成windows服务
- 微信社团小程序ssm.zip
- 食堂订餐小程序ssm.zip
- 微信小程序的高校党费收缴系统ssm.zip
- C# Aspose.Word数据写入和表格合并.zip
- 基于微信小程序的跳蚤市场设计与实现ssm.zip
- 流浪动物救助微信小程序springboot.zip
- 基于微信小程序的网约巴士订票平台的设计与实现ssm.zip