javascript - ES6 class methods not returning anything inside forEach loop -
for reason method gettwo() inside pollclass won't return 2 undefined. if put return statement outside .foreach() loop value returned however.
class poll { constructor(name) { this.name = name; this.nums = [1, 2, 3]; } gettwo() { this.nums.foreach(num => { if (num === 2) return num; }) } } const newpoll = new poll('random name'); console.log(newpoll.gettwo()); // returns undefined, not 2 is issue closure, es 6, or whole other issue?
an arrow function still function, , you're returning foreach callback function, not gettwo, have return gettwo function well.
it's not quite clear why use loop check in way, concept like
gettwo() { var n = 0; this.nums.foreach(num => { if (num === 2) n = num; }) return n; // returns gettwo() }
Comments
Post a Comment