1 | import isArrayLike from './is-array-like';
|
2 |
|
3 | const indexOf = function<T> (arr: T[], obj: T): number {
|
4 | if (!isArrayLike(arr)) {
|
5 | return -1;
|
6 | }
|
7 | const m = Array.prototype.indexOf;
|
8 | if (m) {
|
9 | return m.call(arr, obj);
|
10 | }
|
11 | let index = -1;
|
12 |
|
13 | for (let i = 0; i < arr.length; i++) {
|
14 | if (arr[i] === obj) {
|
15 | index = i;
|
16 | break;
|
17 | }
|
18 | }
|
19 | return index;
|
20 | };
|
21 |
|
22 | export default indexOf;
|