字符串扩展

字符串迭代方式

for ... of ....

let i = "ldkjaflf"
undefined
for (let j of i){
    console.log(j)
}
# 输出结果
l
d
k
j
a
f
l
f

includes(), startsWith(), endsWith()

传统上,JavaScript 只有indexOf方法,可以用来确定一个字符串是否包含在另一个字符串中。ES6 又提供了三种新方法。

  • includes: 返回布尔值,表示是否找到了参数字符串。
  • startswith: 返回布尔值,表示参数字符串是否在原字符串的头部。
  • endswith: 返回布尔值,表示参数字符串是否在原字符串的尾部。
let s = 'Hello world!'
s.startswith("Hello") // true
s.endswith("!") // true
s.includes("o") // true

repeat() 重复

'x'.repeat(3) // "xxx"
'x'.repeat('3') // "xxx"
'x'.repeat(2.9) // 'xx'
'x'.repeat('na') // ''

padStart(), padEnd() 头部补全和尾部补全

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

'x'.padStart(5, 'ab') // 'ababx'  补到长度为5
'x'.padStart(4, 'ab') // 'abax'
'xxxx'.padStart(2, 'ab') // 'xxxx' 如果长度小于原来的长度显示xxxx

实例:模板编译

let template = `
    <% for(let i=0; i < data.supplies.length; i++) { %>
  • <%= data.supplies[i] %>
  • <% } %>
`;

上面代码在模板字符串之中,放置了一个常规模板。该模板使用<%...%>放置 JavaScript 代码,使用<%= ... %>输出 JavaScript 表达式。

你可能感兴趣的:(字符串扩展)