Add a throw statement to the processNumbers function that throws the message "All elements in the list should be numbers." if one of the elements in numberList is not a number. Hint: The function isNaN() returns true if the parameter is not a number.

Answer :

Answer:

  1. function processNumbers(numList){
  2.    try{    
  3.        for(let i=0; i < numList.length; i++){
  4.            if(isNaN(numList[i])){
  5.                throw "All elements in the list should be numbers.";
  6.            }
  7.            
  8.        }
  9.    }
  10.    catch(err){
  11.        console.log(err);
  12.    }
  13. }
  14. let myList = [4, 6, 1, "abc", 9];
  15. processNumbers(myList);

Explanation:

The solution code is written in JavaScript as the isNaN() is an in-built function in JavaScript.

Firstly, create a function processNumbers that takes one input number list, numList (Line 1).

To handle the possible Not a Number (NaN) error, create a try and catch block. In the try block, create a for-loop to traverse through the numList array and use isNaN function to check if the current value is a number (Line 3 - 4). If it is not a number, isNaN will return true and the program will run the throw statement (Line 5). The throw message will be passed to the catch block and display it on console (Line 10 - 12).

We can test the function by using the sample list (Line 15 - 16) and we shall see the thrown error message is displayed.  

Other Questions