Files
lodash/_replaceHolders.js
2017-01-09 13:00:52 -08:00

30 lines
791 B
JavaScript

/** Used as the internal argument placeholder. */
const PLACEHOLDER = '__lodash_placeholder__';
/**
* Replaces all `placeholder` elements in `array` with an internal placeholder
* and returns an array of their indexes.
*
* @private
* @param {Array} array The array to modify.
* @param {*} placeholder The placeholder to replace.
* @returns {Array} Returns the new array of placeholder indexes.
*/
function replaceHolders(array, placeholder) {
let index = -1;
const length = array.length;
let resIndex = 0;
const result = [];
while (++index < length) {
const value = array[index];
if (value === placeholder || value === PLACEHOLDER) {
array[index] = PLACEHOLDER;
result[resIndex++] = index;
}
}
return result;
}
export default replaceHolders;