You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							25 lines
						
					
					
						
							464 B
						
					
					
				
			
		
		
	
	
							25 lines
						
					
					
						
							464 B
						
					
					
				'use strict'; | 
						|
module.exports = function (arr, predicate, ctx) { | 
						|
	if (typeof Array.prototype.findIndex === 'function') { | 
						|
		return arr.findIndex(predicate, ctx); | 
						|
	} | 
						|
 | 
						|
	if (typeof predicate !== 'function') { | 
						|
		throw new TypeError('predicate must be a function'); | 
						|
	} | 
						|
 | 
						|
	var list = Object(arr); | 
						|
	var len = list.length; | 
						|
 | 
						|
	if (len === 0) { | 
						|
		return -1; | 
						|
	} | 
						|
 | 
						|
	for (var i = 0; i < len; i++) { | 
						|
		if (predicate.call(ctx, list[i], i, list)) { | 
						|
			return i; | 
						|
		} | 
						|
	} | 
						|
 | 
						|
	return -1; | 
						|
};
 | 
						|
 |