| 12345678910111213141516171819202122232425262728293031323334 | var bind = require('../internals/function-bind-context');var IndexedObject = require('../internals/indexed-object');var toObject = require('../internals/to-object');var lengthOfArrayLike = require('../internals/length-of-array-like');// `Array.prototype.{ findLast, findLastIndex }` methods implementationvar createMethod = function (TYPE) {  var IS_FIND_LAST_INDEX = TYPE == 1;  return function ($this, callbackfn, that) {    var O = toObject($this);    var self = IndexedObject(O);    var boundFunction = bind(callbackfn, that);    var index = lengthOfArrayLike(self);    var value, result;    while (index-- > 0) {      value = self[index];      result = boundFunction(value, index, O);      if (result) switch (TYPE) {        case 0: return value; // findLast        case 1: return index; // findLastIndex      }    }    return IS_FIND_LAST_INDEX ? -1 : undefined;  };};module.exports = {  // `Array.prototype.findLast` method  // https://github.com/tc39/proposal-array-find-from-last  findLast: createMethod(0),  // `Array.prototype.findLastIndex` method  // https://github.com/tc39/proposal-array-find-from-last  findLastIndex: createMethod(1)};
 |