为了账号安全,请及时绑定邮箱和手机立即绑定

如何检查一个字符串是否与另一个字符串“开始”?

如何检查一个字符串是否与另一个字符串“开始”?

慕尼黑5688855 2019-06-06 16:13:05
如何检查一个字符串是否与另一个字符串“开始”?我怎么写C#的等价物?String.StartsWith用JavaScript?var haystack = 'hello world';var needle = 'he';haystack.startsWith(needle) == true注:这是一个老问题,正如ECMAScript 2015(ES6)介绍的评论中指出的.startsWith方法。然而,在编写本更新时(2015年)浏览器支持还远未完成。.
查看完整描述

3 回答

?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

你可以使用ECMAScript 6String.prototype.startsWith()方法,但它是尚未在所有浏览器中支持..您可能需要使用shim/poly填充将其添加到不支持它的浏览器上。创建符合规范中列出的所有细节有点复杂。如果你想要一个忠实的垫片,可以使用:

一旦您使用了该方法(或者您只支持已经有它的浏览器和JavaScript引擎),您可以这样使用它:

"Hello World!".startsWith("He"); // truevar haystack = "Hello world";var prefix = 'orl';haystack.startsWith(prefix); // false


查看完整回答
反对 回复 2019-06-06
?
蓝山帝景

TA贡献1843条经验 获得超7个赞

另一种选择是.lastIndexOf:

haystack.lastIndexOf(needle, 0) === 0

这回顾了过去haystack发生在.needle从索引开始0haystack..换句话说,它只检查haystack一开始needle.

原则上,与其他一些方法相比,这应该具有性能优势:

  • 它不会搜索整个

    haystack.

  • 它不会创建一个新的临时字符串,然后立即丢弃它。


查看完整回答
反对 回复 2019-06-06
?
翻过高山走不出你

TA贡献1875条经验 获得超3个赞

data.substring(0, input.length) === input


查看完整回答
反对 回复 2019-06-06
  • 3 回答
  • 0 关注
  • 454 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信