您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

ES6+ startsWith()

在 ES5 中用于查找字符串的很少, 我们学习了 includes(),它是针对整个字符串进行查找的,本节要介绍 ES6 的字符串新增 startsWith(),该用来判断当前字符串是否以给定的字符串作为开头。

字符串查找是有一定的算法的,虽然用 includes() 可以判断,无疑只查找字符串的开头算法的时间复杂度是很低的,但是使用 includes() 就需要对整个字符串进行查找,时间复杂度也会很高。在查找长字符串时也会比较耗费,虽然在测试过程中这种差别几乎可以被忽略,但是它的语义化让我们的可读性更高。

startsWith() 用于判断字符串,是否以指定字符串为起始的,如果是字符串的开头找到了给定的字符则返回 true,否则返回 false。

使用语法:

str.startsWith(searchString[, position])

参数说明:

实例:

const str1 = @H__107@'I love imooc.';

console.log(str1.startsWith(@H__107@'I'));     // true
console.log(str1.startsWith(@H__107@'I', ));  // false

确定字符串是否以另字符串开头,但是使用得比较少,使用比较多的是 includes()

var str = @H__107@"I love imooc.";

console.log(str.startsWith(@H__107@"I love"));    // true
console.log(str.startsWith(@H__107@"imooc"));     // false
console.log(str.startsWith(@H__107@"eimooc"));    // false
var str = @H__107@"I love imooc.";

console.log(str.startsWith(@H__107@"love", ));   // false
console.log(str.startsWith(@H__107@"ove", ));    // true

第二个参数的意思是,字符串的位置,上面第二个参数是 3 说明是从字符串的第三个字符开始往后,第三个字符。所以第返回的结果为 false。

在字符串中的开头时可以使用 startsWith 或者 includes(),在字符串少的情况下,它们的效率基本没有差别。但是如果在以某字符串开头的时候,使用 startsWith 会很有语义化,利于阅读。


联系我
置顶