ES8中的字符串扩展

Posted 飞鹰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES8中的字符串扩展相关的知识,希望对你有一定的参考价值。

今天小编在视频中发现了es8中的字符串的拓展,这篇文章涉及到的新语法和新内容,但是个人感觉还是在一些实际中的用途,还是能方便很多的。大家还可以关注我的微信公众号,蜗牛全栈。

一、padStart():字符串的实例方法,在字符串前添加指定字符串,第一个参数是必传的,将字符串扩展后的总长度,第二个参数是可选参数,不传默认是空字符串。

const str = "school"
console.log(str.padStart(8,"x")) // xxschool

二、padEnd():字符串的实例方法,在字符串后添加指定字符串,第一个参数是必传的,将字符串扩展后的总长度,第二个参数是可选参数,不传默认是空字符串。

const str = "school"
console.log(str.padEnd(8,"x")) // schoolxx

三、将日期中的月份和日位数补齐

const now = new Date()
const year = now.getFullYear()
const mounth = (now.getMonth() + 1).toString().padStart(2,\'0\') // 0-11
const day = (now.getDate()).toString().padStart(2,\'0\')
console.log(`${year}-${mounth}-${day}`) // 2021-05-08

四、手机号前八位用*代替

const tel = \'13012443329\'
// 取出后四位,然后在前面用*填充
const newTel = tel.slice(-4).padStart(tel.length,"*")

五、时间戳位数补齐

// 通过前端生成的时间戳是13位,
const frontTimeStamp = new Date().getTime()
// 有时时间戳是后端返回的10位时间戳
const backTimeStamp = 1639999999
const newBackTimeStamp = backTimeStamp.toString().padEnd(13,\'0\')
console.log(newBackTimeStamp) // 1639999999000

以上是关于ES8中的字符串扩展的主要内容,如果未能解决你的问题,请参考以下文章

ES8对对象的扩展

ES8(2017)Object 扩展 values() / entries() / getOwnPropertyDescriptors()

ECMAScript 2017(ES8)特性概述

ES7-Es8 js代码片段

getSupportFragmentManager() 在活动扩展片段中未定义

ES8新特性