| 'use strict'; |
| |
| var $ = require('../internals/export'); |
| var uncurryThis = require('../internals/function-uncurry-this-clause'); |
| var $indexOf = require('../internals/array-includes').indexOf; |
| var arrayMethodIsStrict = require('../internals/array-method-is-strict'); |
|
|
| var nativeIndexOf = uncurryThis([].indexOf); |
|
|
| var NEGATIVE_ZERO = !!nativeIndexOf && 1 / nativeIndexOf([1], 1, -0) < 0; |
| var FORCED = NEGATIVE_ZERO || !arrayMethodIsStrict('indexOf'); |
|
|
| |
| |
| $({ target: 'Array', proto: true, forced: FORCED }, { |
| indexOf: function indexOf(searchElement ) { |
| var fromIndex = arguments.length > 1 ? arguments[1] : undefined; |
| return NEGATIVE_ZERO |
| |
| ? nativeIndexOf(this, searchElement, fromIndex) || 0 |
| : $indexOf(this, searchElement, fromIndex); |
| } |
| }); |
|
|