了解 ECMAScript 2017 (ES8) 中的 String.prefix 和 String.suffix

阅读时长 4 分钟读完

在 ECMAScript 2017 中,新增了两个字符串方法:String.prototype.prefixString.prototype.suffix。这两个方法可以用来判断一个字符串是否以指定的前缀或后缀开头或结尾。

String.prefix

String.prototype.prefix 方法用于判断一个字符串是否以指定的前缀开头。该方法接受一个字符串作为参数,如果该字符串是调用该方法的字符串的前缀,则返回 true,否则返回 false。

示例代码:

上述代码中,str.prefix('Hello') 返回 true,因为字符串 strHello 开头。而 str.prefix('hello') 返回 false,因为字符串 str 的开头是大写的 H,而参数中的 hello 是小写的。

String.suffix

String.prototype.suffix 方法用于判断一个字符串是否以指定的后缀结尾。该方法接受一个字符串作为参数,如果该字符串是调用该方法的字符串的后缀,则返回 true,否则返回 false。

示例代码:

上述代码中,str.suffix('world!') 返回 true,因为字符串 strworld! 结尾。而 str.suffix('World!') 返回 false,因为字符串 str 的结尾是小写的 d,而参数中的 World! 是大写的。

指导意义

String.prototype.prefixString.prototype.suffix 方法的出现,可以使开发者更方便地判断一个字符串是否以指定的前缀或后缀开头或结尾。在实际开发中,我们经常需要对字符串进行一些处理,这两个方法可以帮助我们更快地实现这些操作。

例如,我们可以使用 String.prototype.prefix 方法来判断一个 URL 是否以指定的协议头开头:

上述代码中,isHttpUrl 函数使用了 String.prototype.prefix 方法来判断一个 URL 是否以 http://https:// 开头。如果是,则返回 true,否则返回 false。

类似地,我们也可以使用 String.prototype.suffix 方法来判断一个文件名是否以指定的扩展名结尾:

上述代码中,isImageFile 函数使用了 String.prototype.suffix 方法来判断一个文件名是否以 .jpg.png.gif 结尾。如果是,则返回 true,否则返回 false。

总结

String.prototype.prefixString.prototype.suffix 是 ECMAScript 2017 中新增的字符串方法,可以用来判断一个字符串是否以指定的前缀或后缀开头或结尾。在实际开发中,我们可以使用这两个方法来更方便地实现一些字符串操作。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/65f8ec1ad10417a2224a08ae

纠错
反馈