ES6之字符串的扩展

本文详细介绍了JavaScript中的字符串方法,如includes(), startsWith(), endsWith()和repeat()的使用方法,以及模板字符串的语法和特性,包括多行字符串定义和变量嵌入。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

includes():返回布尔值,表示是否找到参数字符串
startsWith():返回布尔值,表示参数字符串是否在原字符串的头部。
endsWith():返回布尔值,表示参数字符串是否在原字符串的尾部。
这三个方法都支持第二个参数,表示开始搜索的位置。

let str='happy birthday';
console.log(str.startsWith('happy'));//true
console.log(str.endsWith('y'));//true
console.log(str.includes('p'));//true
console.log(str.startsWith('happy', 5));//false
console.log(str.endsWith('y', 6));//true
console.log(str.includes('p', 5));//false

使用第二个参数n时,endsWith的行为与其他两个方法有所不同。它针对前n个字符,而其他两个方法针对从第那个位置到字符串结束位置之前的字符。
repeat():返回一个新字符串,表示将原字符串重复n次。参数如果是小数,会被取整,如果是负数或者Infinity,会报错。但如果是0到-1之间的小数,则等同于0,这是因为会先进行取整运算。0到-1之间的小数取整以后等于-0,repeat视为0。参数NaN等同于0。

'x'.repeat(3)//'xxx'
'happy'.repeat(2);//"happyhappy"
'happy'.repeat(0);//""
'happy'.repeat(2.9);//"happyhappy"
'happy'.repeat(Infinity);//RangeError
'happy'.repeat(-1);//RangeError
'happy'.repeat(-0.8);//""
'happy'.repeat(NaN);//""
//参数是字符串,则会先转为数字
'happy'.repeat('hh');//""
'happy'.repeat('1');//"happy"

模板字符串:
模板字符串是增强版的字符串,用反引号(`)标识。它可以当做普通字符串使用,也可以用来定义多行字符串,或者在字符串中嵌入变量。
如果在字符串中需要使用反引号,则在其前面要用反斜杠转移。

let str=`\`hello\' world!`;
//所有模板字符串的空格和换行都是被保留的。如果不想要这个换行,可以使用trim方法消除
$('#list').html(`
<ul>
	<li>1<li>
	<li>2<li>
</ul>
`.trim());
//如果模板字符串的变量没有声明,将报错
`Hello ${place}`//报错
//大括号内部是字符串将会原样输出
`Hello ${'world'}`//Hello world

模板编译:

var template=`
<ul>
	<%for(var i=0;i<data.supplies.length;i++)%>
	<li><%=data.supplies[i]></li>
	<%>}<%>
</ul>
`
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值