I'm still getting used to working with JSON, Arrays etc so I'm kinda figuring it out as I go along, but I'll try and answer what I can!
In terms of the For Each loops, you can nest them like this:
Which in an incredibly basic example would pull out the data like so:
So you could in theory compare each entry in the components list with some ingredients stored in an array and see if they match the recipe.
In terms of bringing count into it, it would depend on how you've set up the 'inventory' section of your crafting system. In the one I've built, I use a dictionary to track how many of a given item I have, so again you could check the value stored in count against the number stored for an item in the dictionary and if you've got enough, then subtract the count from the dictionary value.
I'm still trying to build out my own crafting system, so I'm going to try some of these ideas myself and I'll let you know how I get on.
Sorry I can't be of more help!