ES6之字符串的拓展(部分)
来源:互联网 发布:数学题在线解答软件 编辑:程序博客网 时间:2024/05/19 03:25
本文参考阮一峰老师的ECMAScript6入门
includes(), startsWith(), endsWith()
传统上,JavaScript只有indexOf方法,可以用来确定一个字符串是否包含在另一个字符串中。ES6又提供了三种新方法。
includes():返回布尔值,表示是否找到了参数字符串。
startsWith():返回布尔值,表示参数字符串是否在源字符串的头部。
endsWith():返回布尔值,表示参数字符串是否在源字符串的尾部。
var s = 'Hello world!';s.startsWith('Hello') // trues.endsWith('!') // trues.includes('o') // true
这三个方法都支持第二个参数,表示开始搜索的位置。
var s = 'Hello world!';s.startsWith('world', 6) // trues.endsWith('Hello', 5) // trues.includes('Hello', 6) // false
上面代码表示,使用第二个参数n时,endsWith的行为与其他两个方法有所不同。它针对前n个字符,而其他两个方法针对从第n个位置直到字符串结束。
repeat()
repeat方法返回一个新字符串,表示将原字符串重复n次。
'x'.repeat(3) // "xxx"'hello'.repeat(2) // "hellohello"'na'.repeat(0) // ""
padStart(),padEnd()
ES2017 引入了字符串补全长度的功能。如果某个字符串不够指定长度,会在头部或尾部补全。padStart()用于头部补全,padEnd()用于尾部补全。
'x'.padStart(5, 'ab') // 'ababx''x'.padStart(4, 'ab') // 'abax''x'.padEnd(5, 'ab') // 'xabab''x'.padEnd(4, 'ab') // 'xaba'
模板字符串
$('#result').append( 'There are <b>' + basket.count + '</b> ' + 'items in your basket, ' + '<em>' + basket.onSale + '</em> are on sale!');
上面这种写法相当繁琐不方便,ES6引入了模板字符串解决这个问题。
$('#result').append(` There are <b>${basket.count}</b> items in your basket, <em>${basket.onSale}</em> are on sale!`);
模板字符串(template string)是增强版的字符串,用反引号(`)标识。它可以当作普通字符串使用,也可以用来定义多行字符串,或者在字符串中嵌入变量。
// 普通字符串`In JavaScript '\n' is a line-feed.`// 多行字符串`In JavaScript this is not legal.`console.log(`string text line 1string text line 2`);// 字符串中嵌入变量var name = "Bob", time = "today";`Hello ${name}, how are you ${time}?`
阅读全文
0 0
- ES6之字符串的拓展(部分)
- ES6之函数的拓展(部分)
- ES6之数组的拓展(部分)
- ES6之字符串拓展
- es6---解构赋值与字符串的拓展
- ES6 函数的拓展
- ES6学习笔记(字符串拓展)
- ES6基础教程(4)-字符串拓展
- ES6学习之路(四) 数组拓展
- 9、字符串、数组、对象等内置对象的拓展—ES6学习笔记
- ES6 学习笔记之《字符串的扩展》
- ES6之-字符串的新特性
- ES6之字符串的遍历器接口
- ES6系列之---字符串的扩展函数
- ES6之模板字符串
- ES6学习4(函数的拓展)
- ES6学习5(对象的拓展)
- ES6基础教程(5)-函数的拓展
- * 24种设计模式——命令模式
- java冒泡排序算法
- 讨论构造拷贝构造函数的N种调用情况
- 泛型在JAVA中的应用
- python 案例006 (斐波那契数列)
- ES6之字符串的拓展(部分)
- 一个简单的例子模拟JDK动态代理
- 浅谈java内部类及其作用
- 08、MySQL代码执行结构
- 某徒步旅游网站python爬虫小练习
- 二叉树
- linux的jdk安装
- eclipse中启动tomcat而浏览器无法访问http://localhost:8080
- sturts2: jsp 与action之间的list传送