2016-10-10 03:43:44 +02:00
|
|
|
// @@replace logic
|
2017-08-14 05:01:11 +02:00
|
|
|
require('./_fix-re-wks')('replace', 2, function (defined, REPLACE, $replace) {
|
2016-10-10 03:43:44 +02:00
|
|
|
// 21.1.3.14 String.prototype.replace(searchValue, replaceValue)
|
2017-08-14 05:01:11 +02:00
|
|
|
return [function replace(searchValue, replaceValue) {
|
2016-10-10 03:43:44 +02:00
|
|
|
'use strict';
|
2017-08-14 05:01:11 +02:00
|
|
|
var O = defined(this);
|
|
|
|
var fn = searchValue == undefined ? undefined : searchValue[REPLACE];
|
2016-10-10 03:43:44 +02:00
|
|
|
return fn !== undefined
|
|
|
|
? fn.call(searchValue, O, replaceValue)
|
|
|
|
: $replace.call(String(O), searchValue, replaceValue);
|
2017-05-27 17:36:13 +02:00
|
|
|
}, $replace];
|
2017-08-14 05:01:11 +02:00
|
|
|
});
|