简体   繁体   中英

Using continue Statement in JavaScript

I'm learning JavaScript and I'm experimenting with the continue statement, and from my understanding, it's suppose to "skip" an iteration and than continue. I wrote a piece of code from a Udemy course I'm doing. The for loop is suppose to fill the percentages2 array, and it does work.

However, I'm trying to have the array not be filled up with values less than 2. If it works I should be getting back 2 elements in my percentages2 array instead of 4.

Anyone know why the continue statement isn't working?

 const populations2 = [332, 144, 1441, 67]; const percentages2 = []; const percentageOfWorld4 = function (population) { return (population / 7900) * 100; }; for (let p = 0; p < populations2.length; p++) { if (percentages2[p] < 2) continue; percentages2.push(percentageOfWorld4(populations2[p])); } console.log(percentages2);

Hyy,

  • Your are looping an array populations2 right
  • first mistake inside the loop your are not checking the return result from function percentageOfWorld4 it should be (percentageOfWorld4(populations2[p]) < 2)
    • And you should pass the pth value of populations2 then use continue
  • later you can push the other element to a different array percentages2.push(populations2[p]);
const populations2 = [332, 144, 1441, 67];
const percentages2 = [];

const percentageOfWorld4 = function(population) {
    return (population / 7900 ) * 100;
};

for (let p = 0; p < populations2.length; p++) {

    if(percentageOfWorld4(populations2[p]) < 2) continue;

    percentages2.push(populations2[p]);

}; console.log(percentages2); // [4.2025316455696204, 18.240506329113924]

It is a good practice to store the return value in a variable rather then calling the function twice

const populations2 = [332, 144, 1441, 67];
const percentages2 = [];

const percentageOfWorld4 = function(population) {
    return (population / 7900 ) * 100;
};

for (let p = 0; p < populations2.length; p++) {
    let result = percentageOfWorld4(populations2[p]);

    if(result < 2) continue;

    percentages2.push(result);

}; console.log(percentages2); // [4.2025316455696204, 18.240506329113924]

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM