sequency
Version:
Functional sequences for processing iterable data in JavaScript
27 lines • 898 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.ElementAtOrElse = void 0;
var ElementAtOrElse = /** @class */ (function () {
function ElementAtOrElse() {
}
/**
* Returns the element at position `index` (zero-based). If `index` is out of bounds returns
* the result of the given `defaultValue` function.
*
* @param {number} index
* @param defaultValue
* @returns {T}
*/
ElementAtOrElse.prototype.elementAtOrElse = function (index, defaultValue) {
var i = 0;
for (var item = this.iterator.next(); !item.done; item = this.iterator.next()) {
if (i === index) {
return item.value;
}
i++;
}
return defaultValue(index);
};
return ElementAtOrElse;
}());
exports.ElementAtOrElse = ElementAtOrElse;
//# sourceMappingURL=elementAtOrElse.js.map