Will this allow me to recursively call an API without running indefinitely? *** Do I have to return the function or can I just call it within the function?
const apiUrl = "https://api.website.com/products";
let productArray = [];
let lowPrice = 0;
let highPrice = 100000;
const countProduct = async (lowPrice, highPrice) => {
const response = await axios.get(apiUrl, {`enter code here`
params: {
minPrice: lowPrice,
maxPrice: highPrice
}
});
let lowerLimit = minPrice;
let upperLimit = maxPrice;
while (upperLimit > lowerLimit || response.data.count === 0) {
if (response.data.count >= 1000) {
countProduct(lowerLimit, (lowerLimit + upperLimit / 2)); // ***<--- Can I just call the function or do I have to return it
} else {
response.data.products.forEach(product => {
if (product.price > lowerLimit) {
lowerLimit = product.price;
}
productArray.push(product);
})
lowerLimit = parseInt(lowerLimit + 0.01);
upperLimit = parseInt(100000);
}
}
};