I am trying to understand about 2 hours what I am doing wrong in third and fourth line of code. The console thows out SyntaxError: Unexpected token if
or SyntaxError: missing ) after argument list
. The first and the second line works as expected.
let arr = ['Custy Stomer', 'C. Oostomar', 'C.U.S. Tomer', 3432434, 'Custo Mer', 'Custopher Ustomer', 3432435, 'Kasti Yastimeur']; let checkArr = (arr) => arr.forEach(el => console.log(typeof el !== 'string')) let checkArr = (arr) => arr.forEach(el => if (typeof el !== 'string') { console.log(`Type error: ${el} should be a string!`)} ) let checkArr = ((arr) => { arr.forEach(el => typeof el !== 'string' ? console.log(`Type error: ${el} should be a string!`) : null; )}) checkArr(arr);
Advertisement
Answer
Line 3:
Wrap the forEach
callback body in brackets
let checkArr = (arr) => arr.forEach(el => { if (typeof el !== 'string') { console.log(`Type error: ${el} should be a string!`); } })
Line 4:
Remove semi-colon
let checkArr = (arr) => { arr.forEach(el => typeof el !== 'string' ? console.log(`Type error: ${el} should be a string!`) : null ) }
Recommended:
const checkArr = (arr) => { arr.forEach(el => { if (typeof el !== 'string') { console.log(`Type error: ${el} should be a string!`); } }); }