目录

padStart()

标准内置对象:String.Prototype.padStart()

ES2017 引入了字符串补全长度的功能。如果某个字符串不够指定长度,会在头部或尾部补全。padStart() 用于头部补全,padEnd() 用于尾部补全。

下面主要写padStart()。

介绍

padStart() 方法用另一个字符串填充当前字符串(重复,如果需要的话),以便产生的字符串达到给定的长度。填充从当前字符串的开始(左侧)应用的。

语法

str.padStart(targetLength [, padString])

参数

targetLength

当前字符串需要填充到的目标长度。如果这个数值小于当前字符串的长度,则返回当前字符串本身。

padString 可选

填充字符串。如果字符串太长,使填充后的字符串长度超过了目标长度,则只保留最左侧的部分,其他部分会被截断。此参数的缺省值为 " "(U+0020)。

返回值

在原字符串开头填充指定的填充字符串直到目标长度所形成的新字符串。

用法

用法1

第二个参数(填充字符转)缺省
默认给原字符串开头填充“ ”,也就是默认填充空格

使用2

目标长度小于原字符串长度

使用3

字符串太长,使填充后的字符串长度超过了目标长度,则只保留最左侧的部分,其他部分会被截断。

使用4 正常使用

性能优化方案

问题简介

自己实现一个padStart(),实现给字符串‘hello’前补0,考虑性能。

测试方式:跑1w次,字符串拼接到长度1w。

Mr Zhou的实现

String.prototype.zpadStart = function (targetLength, padString) {let string = thiswhile (string.length < targetLength) {string = padString + string}return string
}

结尾

我是圆圆,如果我的文章对你的学习成长有所帮助,欢迎 点 赞

JS新规范padStart()详解,自己实现一个简单的padStart()相关推荐

  1. 【tkinter】的使用详解,做一个简单实用的万能可视化界面!

    文章目录 一.tkinter类介绍 二.在例子中学会用法! 1.一个简单的开始 2.学会使用button 3.Entry窗口部件 1.简单使用 2.动态改变entry内部的值 4.Text窗口部件 ( ...

  2. keras安装_代码详解:构建一个简单的Keras+深度学习REST API

    在本教程中,我们将介绍一个简单的方法来获取Keras模型并将其部署为REST API.本文所介绍的示例将作为你构建自己的深度学习API的模板/起点--你可以扩展代码,根据API端点的可伸缩性和稳定性对 ...

  3. computed用发_Vue.js中computed使用详解

    这次给大家带来Vue.js中computed使用详解,Vue.js中computed使用的注意事项有哪些,下面就是实战案例,一起来看一下. JS属性: JavaScript有一个特性是Object.d ...

  4. php 实例 规范,PHP开发规范实例详解

    本文主要和大家分享PHP开发规范实例详解,希望能帮助到大家. 源文件 代码使用<?php开头 ,忽略闭合标签?> 文件格式必须是无BOM UTF-8格式 一个文件只声明一种类型,如clas ...

  5. nodejs 本地php服务器,node.js创建本地服务器详解

    本文主要和大家分享node.js创建本地服务器详解,简易上手node.js后,我们就可以在自己电脑上创建本地服务器了.希望能帮助到大家. 一.先上代码.//请求Node.js自带的http模块. va ...

  6. js打印三角形超详解

    js打印三角形超详解 j控制星星的总行数,i控制每行星星的打印个数 打印图形如下: (1) (2) //str=""用来存储星星// 理解步骤1:在一行输出6个星星如何操作,在循环 ...

  7. 苹果Ad_Hoc添加新设备UUID详解

    苹果Ad_Hoc添加新设备UUID详解 登录苹果开发者中心 选择Certificates,Identifiers&Profiles 进入 选择设备栏目 右侧为测试可用列表设备 点击新增按钮 进 ...

  8. 米家app扫描不到石头机器人_2000元档新擂主?详解石头扫地机器人 P5战力值

    原标题:2000元档新擂主?详解石头扫地机器人 P5战力值 透过这个令人不堪回首的长假,方了解自己的懒惰底线在哪,晨起的生物钟被调到了自然醒,每天饿到下午吃挂面--望着地板上日益渐厚的灰尘,悄然打起了 ...

  9. Three.js - 摄像机的使用详解(透视投影摄像机、正交投影摄像机)

    一.两种摄像机的区别与比较 Three.js 库提供了两种不同的摄像机:透视投影摄像机和正交投影摄像机. 透视投影摄像机:这种摄像机的效果更贴近真实世界.也就是物体离摄像机越远,它们就会被渲染得越小. ...

  10. JS事件的三个阶段详解

    JS事件的三个阶段详解 一.JS事件的三个阶段 二.冒泡阶段触发事件 三.捕获阶段触发事件 四.阻止冒泡行为 五.阻止事件冒泡和默认行为 一.JS事件的三个阶段 事件处理机制的三个阶段:1.捕获 2. ...

最新文章

  1. linux6直连存储挂载磁盘,CentOS7mount网络磁盘的详细步骤
  2. R语言 lightgbm 算法优化:不平衡二分类问题(附代码)
  3. Bootstrap系列 -- 28. 下拉菜单状态
  4. OpenCV Laplace point/edge detection拉普拉斯点/边缘检测的实例(附完整代码)
  5. Taro+react开发(97):问答模块04
  6. 用任意合法序列建立一棵二叉树(洛谷P1305题题解,Java语言描述)
  7. 第四章 自上而下分析
  8. NUC1077 Humble Numbers【数学计算+打表+水题】
  9. vue $emit 父组件与子组件之间的通信(父组件向子组件传参)
  10. 一种可信万兆加密分流认证装置研究
  11. tomcat 官网下载
  12. iDLG Improved Deep Leakage from Gradients
  13. 数据库数据模型(关系型模型与非关系模型的区别)
  14. Python简洁出入库系统(批量出入库)
  15. PCA(Principal Components Analysis)
  16. 冬日舞会服务器维护中,绝版皮肤被天美终结,冬日舞会太优雅?宫本很可惜,这款没见过!...
  17. Hack movies
  18. UE4官方文档学习笔记材质篇——UV坐标动画,凹凸贴图偏移
  19. 大猫老师小课堂搜索引擎专题:ElasticSearch 的使用方法
  20. 天津师范大学计算机专业排名,天津最好的10所大学公布:天津师范大学第三,各校就业率相差较大...

热门文章

  1. 回归模型选择性能指标 | RMSE与MAE应用及其区别(L1-曼哈顿范数和L2-欧几里得范数)
  2. 前端cookie、localStorage、sessionStorage缓存技术总结
  3. 计算机网络基于交换机实验报告,《计算机网络》实验报告交换机接口镜像
  4. 使用nodejs编写自动化脚本,真香!
  5. Task01了解逻辑回归的理论
  6. 原生js-Ajax封装
  7. 一个老话题~分手还能成为好朋友吗?
  8. vue文件夹目录详解教程
  9. JAVA生成grib文件_wgrib读grib数据
  10. opencv-python学习(三)图片的平滑滤波处理