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.
		
		
		
		
			
				
					19 lines
				
				701 B
			
		
		
			
		
	
	
					19 lines
				
				701 B
			| 
											11 months ago
										 | 'use strict'; | ||
|  | var $ = require('../internals/export'); | ||
|  | var bind = require('../internals/function-bind-context'); | ||
|  | var aMap = require('../internals/a-map'); | ||
|  | var iterate = require('../internals/map-iterate'); | ||
|  | 
 | ||
|  | // `Map.prototype.find` method
 | ||
|  | // https://github.com/tc39/proposal-collection-methods
 | ||
|  | $({ target: 'Map', proto: true, real: true, forced: true }, { | ||
|  |   find: function find(callbackfn /* , thisArg */) { | ||
|  |     var map = aMap(this); | ||
|  |     var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined); | ||
|  |     var result = iterate(map, function (value, key) { | ||
|  |       if (boundFunction(value, key, map)) return { value: value }; | ||
|  |     }, true); | ||
|  |     return result && result.value; | ||
|  |   } | ||
|  | }); |