Skip to main content

generateArrayItemsLoop()

generateArrayItemsLoop(arrayVar, ctx, itemGenerator, supportsCoercion?): object

Experimental

Generates an optimized for loop for validating array items.


Parametersโ€‹

arrayVar: stringโ€‹

The variable name of the array

ctx: GeneratorContextโ€‹

The generator context

itemGenerator: (varName, ctx) => objectโ€‹

Code generator for each item

supportsCoercion?: booleanโ€‹

Whether to pre-allocate result array for coercions


Returns: objectโ€‹

Generated code lines and updated context

code: string[]โ€‹

ctx: GeneratorContextโ€‹


Sinceโ€‹

2.0.0


Exampleโ€‹

const result = generateArrayItemsLoop("value", ctx, stringGenerator);
// result.code = [
// 'var len = value.length;',
// 'for (var i = 0; i < len; i++) {',
// ' var item = value[i];',
// ' if (typeof item !== "string") return "Index " + i + ": Expected string";',
// '}'
// ]