Here you can find the source of startsWith(needle)
String.prototype.startsWith = function(needle) { return(this.indexOf(needle) == 0); };
String.prototype.startsWith = function( value ) return ( this.substr( 0, value.length ) == value ) ;
const strPro=String.prototype; String.prototype.startsWith||Object.assign(strPro,{ startsWith(searchString,position){ if (position) { return this.indexOf(searchString) === position; return this.indexOf(searchString)===0; }, endsWith(searchString,position){ ...
String.prototype.startsWith||(String.prototype.startsWith=function(e,t){ return t=t||0,this.substr(t,e.length)===e} );
String.prototype.startsWith = function (matchString) { if (this == matchString) return true; var matchString = '^' + matchString + '[\x20-\x7E]+$'; var regex = new RegExp(matchString); return !!this.match(regex); };
String.prototype.startsWith = function(needle) { return this.substr(0, needle.length) == needle;
String.prototype.startsWith = function(needle) { return(this.indexOf(needle) == 0); };
String.prototype.startsWith = function(other) { var length = other.length; if (this.length < length) return false; return this.substring(0, length) == other; };
String.prototype.startsWith = function(other, case_cmp) { var first = this; var second = other; if(!case_cmp) { first = first.toLowerCase(); second = second.toLowerCase(); return (first.indexOf(second) === 0);
String.prototype.startsWith = function(pattern) { return this.indexOf(pattern) === 0; };