String.prototype.endsWith()
The endsWith()
method determines whether a string ends with the characters of another string, returning true
or false
as appropriate.
Syntax
<var>str</var>.endsWith(<var>searchString</var>[, <var>position</var>])
Parameters
searchString
- The characters to be searched for at the end of this string.
position
- Optional. Search within this string as if this string were only this long; defaults to this string's actual length, clamped within the range established by this string's length.
Return value
true
if the string ends with the characters of the search string; otherwise, false
.
Description
This method lets you determine whether or not a string ends with another string. This method is case-sensitive.
Examples
Using endsWith()
var str = 'To be, or not to be, that is the question.'; console.log(str.endsWith('question.')); // true console.log(str.endsWith('to be')); // false console.log(str.endsWith('to be', 19)); // true
Polyfill
This method has been added to the ECMAScript 6 specification and may not be available in all JavaScript implementations yet. However, you can polyfill String.prototype.endsWith()
with the following snippet:
if (!String.prototype.endsWith) { String.prototype.endsWith = function(searchString, position) { var subjectString = this.toString(); if (typeof position !== 'number' || !isFinite(position) || Math.floor(position) !== position || position > subjectString.length) { position = subjectString.length; } position -= searchString.length; var lastIndex = subjectString.lastIndexOf(searchString, position); return lastIndex !== -1 && lastIndex === position; }; }
Specifications
Specification | Status | Comment |
---|---|---|
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'String.prototype.endsWith' in that specification. |
Standard | Initial definition. |
ECMAScript 2017 Draft (ECMA-262) The definition of 'String.prototype.endsWith' in that specification. |
Draft |
Browser compatibility
Feature | Chrome | Firefox (Gecko) | Edge | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | 41 | 17 (17) | (Yes) | No support | No support | 9 |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | No support | 36 | 17.0 (17) | No support | No support | No support |
See also
String.prototype.startsWith()
String.prototype.includes()
String.prototype.indexOf()
String.prototype.lastIndexOf()
License
© 2016 Mozilla Contributors
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-us/docs/web/javascript/reference/global_objects/string/endswith