18 lines
767 B
JavaScript
18 lines
767 B
JavaScript
// 21.1.3.18 String.prototype.startsWith(searchString [, position ])
|
|
'use strict';
|
|
var $export = require('./_export')
|
|
, toLength = require('./_to-length')
|
|
, context = require('./_string-context')
|
|
, STARTS_WITH = 'startsWith'
|
|
, $startsWith = ''[STARTS_WITH];
|
|
|
|
$export($export.P + $export.F * require('./_fails-is-regexp')(STARTS_WITH), 'String', {
|
|
startsWith: function startsWith(searchString /*, position = 0 */){
|
|
var that = context(this, searchString, STARTS_WITH)
|
|
, index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length))
|
|
, search = String(searchString);
|
|
return $startsWith
|
|
? $startsWith.call(that, search, index)
|
|
: that.slice(index, index + search.length) === search;
|
|
}
|
|
}); |