undefined is not a function
undefined is not a function
undefined is not a function
undefined is not a function
undefined is not a function
undefined is not a function
Your code so far
const realNumberArray = [4, 5.6, -9.8, 3.14, 42, 6, 8.34, -2];
const squareList = (arr) => {
"use strict";
// change code below this line
let squaredIntegers = [];
arr.map(findInt)
let findInt = (item) => {
if(Number.isInteger(item) && item > 0) {
squaredIntegers.push(Math.pow(item,2));
}
}
// change code above this line
return squaredIntegers;
};
// test your code
const squaredIntegers = squareList(realNumberArray);
console.log(squaredIntegers);
Your browser information:
User Agent is: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.90 Safari/537.36.
findInt function doesn’t exist(=== undefined) when arr.map(findInt) because declaration of the function goes after.
It is related to JS engine. It goes through your code 2 times. The first time it reads all the variables and put them to memory without a value. The second time it reads the value.
Hi, I defined findInt before calling it and now I am getting this error. I’ve tried to figure out the solution but have failed. squaredIntegers should be [16, 1764, 36]
const realNumberArray = [4, 5.6, -9.8, 3.14, 42, 6, 8.34, -2];
const squareList = (arr) => {
"use strict";
// change code below this line
const squaredInteger = [];
let findInt = (item) => {
if(Number.isInteger(item) && item > 0) {
squaredInteger.push(Math.pow(item,2));
}
arr.map(findInt)
}
// change code above this line
return squaredInteger;
};
// test your code
const squaredIntegers = squareList(realNumberArray);
console.log(squaredIntegers);`Preformatted text`