startsWith()
方法用来判断当前字符串是否以另外一个给定的子字符串开头,并根据判断结果返回 true
或 false
。
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
语法
str.startsWith(searchString[, position])
参数
-
searchString
- 要搜索的子字符串。
-
position
可选 -
在
str
中搜索searchString
的开始位置,默认值为 0,也就是真正的字符串开头处。
返回值
如果在字符串的开头找到了给定的字符则返回true
;否则, 返回false
.
描述
这个方法能够让你确定一个字符串是否以另一个字符串开头。
这个方法区分大小写。
示例
使用 startsWith()
var str = "To be, or not to be, that is the question."; alert(str.startsWith("To be")); // true alert(str.startsWith("not to be")); // false alert(str.startsWith("not to be", 10)); // true
Polyfill
此方法已被添加至 ECMAScript 2015 规范之中,但可能不能在所有的现行 JavaScript 实现中使用。不过,你可以用以下的代码段为 String.prototype.startsWith()
制作 Polyfill:
if (!String.prototype.startsWith) { Object.defineProperty(String.prototype, 'startsWith', { value: function(search, pos) { pos = !pos || pos < 0 ? 0 : +pos; return this.substring(pos, pos + search.length) === search; } }); }
Mathias Bynens 在 Github 上提供了一份更为稳定有效(完全符合 ES2015 规范),但性能略差、代码紧凑性微减的 PolyFill。
规范
规范 | 状态 | 备注 |
---|---|---|
ECMAScript 2015 (6th Edition, ECMA-262) String.prototype.startsWith |
Standard | Initial definition. |
ECMAScript Latest Draft (ECMA-262) String.prototype.startsWith |
Draft |
浏览器兼容性
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | Server | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
startsWith |
Chrome Full support 41 | Edge Full support 12 | Firefox Full support 17 | IE No support No | Opera Full support 28 | Safari Full support 9 | WebView Android Full support Yes | Chrome Android Full support 36 | Firefox Android Full support 17 | Opera Android Full support Yes | Safari iOS Full support 9 | Samsung Internet Android Full support 3.0 | nodejs Full support 4.0.0
|
Legend
- Full support
- Full support
- No support
- No support
- User must explicitly enable this feature.
- User must explicitly enable this feature.