20 lines
		
	
	
		
			586 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			586 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
"use strict";
 | 
						|
 | 
						|
var toPosInt          = require("../../number/to-pos-integer")
 | 
						|
  , callable          = require("../../object/valid-callable")
 | 
						|
  , value             = require("../../object/valid-value")
 | 
						|
  , objHasOwnProperty = Object.prototype.hasOwnProperty
 | 
						|
  , call              = Function.prototype.call;
 | 
						|
 | 
						|
module.exports = function (cb/*, thisArg*/) {
 | 
						|
	var i, self, thisArg;
 | 
						|
 | 
						|
	self = Object(value(this));
 | 
						|
	callable(cb);
 | 
						|
	thisArg = arguments[1];
 | 
						|
 | 
						|
	for (i = toPosInt(self.length) - 1; i >= 0; --i) {
 | 
						|
		if (objHasOwnProperty.call(self, i)) call.call(cb, thisArg, self[i], i, self);
 | 
						|
	}
 | 
						|
};
 |