Report abuse

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Array.prototype.locate = function( value, pos ) {

        pos = pos || [];

        for( var i = this.length; --i >= 0; ) {

            if (this[i] === value) { 

                return pos.push(i); 

            }
            else if ( Object.prototype.toString.call( this[i] ) === '[object Array]' ) {

                pos.push(i);

                if ( this[i].locate( value, pos ) ) { 

                    return pos;

                }
                else {

                    pos.pop();

                }

            }

        }

    return false;
}