JavaScript 字符串数字左补位,右补位,取固定长度,截位扩展函数代码

下面我来详细讲解JavaScript字符串数字左补位、右补位、取固定长度、截位扩展函数的完整攻略。

JavaScript字符串数字左补位

左补位的需求在某些场景下非常常见,比如对日期格式化时,需要将月份和日期左补位补成两位数,例如1月份,格式化后应该是"01"。下面是一个左补位的示例代码:

function leftPad(val, width, ch) {
  ch = ch || '0';
  val = String(val);
  while (val.length < width) {
    val = ch + val;
  }
  return val;
}

console.log(leftPad(2, 3)); //输出"002"
console.log(leftPad(9, 2)); //输出"09"
console.log(leftPad(10, 3)); //输出"010"

该函数接受三个参数:val 表示需要补位的数字或字符串,width 表示补位后的位数,ch 表示用于补位的字符。函数内部先对 ch 进行了一下处理,如果未传递字符则默认为 0。然后将传入的 val 转为字符串类型,使用while循环在 val 前面补 ch,直到 val 的长度等于 width。最后返回补位后的字符串。

JavaScript字符串数字右补位

右补位同样在某些场景下非常常见,例如金额格式化时,需要将小数点后的位数都处理成两位,不足的用0填充。下面是一个右补位的示例代码:

function rightPad(val, width, ch) {
  ch = ch || '0';
  val = String(val);
  while (val.length < width) {
    val = val + ch;
  }
  return val;
}

console.log(rightPad(2, 3)); //输出"200"
console.log(rightPad(9, 2)); //输出"90"
console.log(rightPad(10, 3)); //输出"100"

同样是接受三个参数,与 leftPad 函数相似。函数内部对 ch 进行了一下处理,如果未传递字符则默认为 0。然后将传入的 val 转为字符串类型,使用 while 循环在 val 后面补 ch,直到 val 的长度等于 width。最后返回补位后的字符串。

JavaScript字符串数字取固定长度

有时候需要将字符串或数字截取到固定长度,只显示一定位数的字符或数字。下面是一个取固定长度的示例代码:

function fixedLength(val, length) {
  val = String(val);
  if (val.length > length) {
    val = val.substr(0, length);
  }
  return val;
}

console.log(fixedLength('abcd', 2)); //输出"ab"
console.log(fixedLength('12345678', 4)); //输出"1234"

该函数接受两个参数:val 表示需要截取的字符或数字,length 表示截取后的长度。函数内部先将传入的 val 转为字符串类型,然后判断其长度是否大于 length,如果大于则使用 substr 方法截取前 length 位的字符。最后返回截取后的字符串。

JavaScript字符串数字截位扩展

截位扩展需要将一个字符串或数字进行扩展或截取,如果长度不够,则使用指定字符将其补位到指定长度。如果长度超过特定长度,则将其截取到指定长度。下面是一个截位扩展的示例代码:

function clipExtend(val, length, filler, side) {
  val = String(val);
  if (val.length >= length) {
    return val.substr(0, length);
  }
  filler = filler || ' ';
  while (val.length < length) {
    if (side === 'left') {
      val = filler + val;
    } else {
      val = val + filler;
    }
  }
  return val;
}

console.log(clipExtend('12', 5, '*', 'left')); //输出"***12"
console.log(clipExtend('abcdefg', 3, '0', 'right')); //输出"abc"
console.log(clipExtend(123, 7, '-', 'right')); //输出"123----"

该函数接受四个参数:val (必选) 表示需要进行扩展或截取的字符串或数字,length (必选) 表示扩展或截取后的最终长度,filler (可选) 表示用于补位的字符,默认为空格,side (可选) 表示往哪个方向补位,默认为右侧补位。函数内部先将传入的 val 转为字符串类型,然后判断其长度是否大于或等于 length,如果是则使用 substr 方法截取前 length 位的字符。如果长度小于 length,则使用 while 循环补充至长度为 length。如果 side 为 left,则在字符串左侧补位;否则在右侧补位。最后返回扩展或截取后的字符串。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript 字符串数字左补位,右补位,取固定长度,截位扩展函数代码 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • js 创建书签小工具之理论

    我非常乐意为您讲解如何创建 JavaScript 创建书签小工具的理论攻略,以下是详细说明: Step1:理解书签小工具 书签小工具可以帮助用户快速访问经常浏览的网页,通常在浏览器的工具栏或书签栏中添加。为了创建书签小工具,我们需要理解如何创建书签,以及如何通过 JavaScript 脚本来自动化创建和修改书签。 Step2:创建书签 我们可以通过浏览器的界…

    JavaScript 2023年5月27日
    00
  • 整理Javascript数组学习笔记

    下面是针对“整理JavaScript数组学习笔记”的攻略: 1. 了解JavaScript数组基础知识 JavaScript数组是一种用于存储多个值的有序集合。数组是一种特殊的变量类型,使用方括号([ ])来表示。在数组中的每个元素都有一个唯一的索引。数组的索引通常从0开始,第一个元素的索引为0. 示例1:如何创建一个数组 var fruits = [‘Ap…

    JavaScript 2023年5月27日
    00
  • 关于extjs treepanel复选框选中父节点与子节点的问题

    关于 ExtJS TreePanel 复选框选中父节点与子节点的问题,需要考虑到以下情况: 当选中父节点时,是否需要将其所有子节点也选中; 当选中子节点时,是否需要将其所有父节点也选中。 为了实现这样的功能需求,我们需要借助 ExtJS TreePanel 提供的以下两个属性: checkModel:指定树形节点的选择方式,一般设置为‘cascade’(级联…

    JavaScript 2023年6月11日
    00
  • 九种js弹出对话框的方法总结

    那么首先对于这个主题,我们需要先明确一下一些基本的概念。 什么是对话框 对话框是一种常用的网页中弹出提示信息的方式,类似于当前操作系统的模态对话框。它可以包含文本、按钮、表单等,显示给用户进行操作。 常见的对话框种类 在JS中,常见的对话框包括alert、confirm、prompt、layer、sweetAlert2、artDialog、mbox、weui…

    JavaScript 2023年6月11日
    00
  • JS中处理与当前时间间隔的函数代码

    JS中处理与当前时间间隔的函数代码通常包含两个部分:获取当前时间和计算时间间隔。以下是完整攻略: 获取当前时间 JavaScript中可以使用Date对象获取当前时间。可以使用以下两种方式创建一个Date对象: // 创建一个包含当前时间的日期对象 var currentTime = new Date(); // 创建一个包含指定时间的日期对象 var sp…

    JavaScript 2023年5月27日
    00
  • 编写跨浏览器的javascript代码必备[js多浏览器兼容写法]

    编写跨浏览器的JavaScript代码必备-完整攻略 什么是跨浏览器JavaScript? 跨浏览器JavaScript意味着编写能够在不同浏览器上运行的代码,这是JavaScript编程时最常见的问题之一。不同浏览器可能支持不同的JavaScript版本或API,因此代码运行在一个浏览器上可能会出错在另一个浏览器上,这给一些开发者带来了很大的困扰。 为了解…

    JavaScript 2023年5月17日
    00
  • JavaScript异步编程中async函数详解

    JavaScript异步编程中async函数详解 概述 在JavaScript异步编程中,async函数是一个非常重要的概念。async函数是异步操作的一种解决方案,它可以让我们以同步的方式编写异步代码。async函数本质上是基于Promise实现的,它可以返回一个Promise对象,同时支持await操作符,可以让我们在函数内部进行异步操作。 定义 asy…

    JavaScript 2023年5月28日
    00
  • 微信小程序表单验证功能完整实例

    下面是关于“微信小程序表单验证功能完整实例”的详细攻略,包含了代码实现和示例说明。 1. 简介 在微信小程序开发过程中,我们经常需要使用表单来收集用户数据。为了保证数据的有效性和安全性,我们需要对表单数据进行验证。下面我们就来介绍一种微信小程序表单验证功能的完整实例。 2. 实现步骤 2.1 HTML 结构 首先,我们需要在 HTML 中添加表单元素,并设置…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部