If using an array, possibly an array of objects will be better, eg.
product = [
{system : [1], reagents : [1, 2], controls : [1, 2, 3], accessories : [1, 2, 3, 4] },
{system : [1], reagents : [1, 2], controls : [1, 2, 3], accessories : [1, 2, 3, 4] },
{system : [1], reagents : [1, 2], controls : [1, 2, 3], accessories : [1, 2, 3, 4] },
{system : [1], reagents : [1, 2], controls : [1, 2, 3], accessories : [1, 2, 3, 4] }
];
then your Array elements are accessed via a loop as well but the object properties are then accessible, eg..
product.system