为什么在此forEach中以下内容仅出现一次?

时间:2018-10-04 15:45:49

标签: javascript

likes = ['eating', 'biking']  
  Person.prototype.getBio = function () {
    let bio = `${this.firstName} is ${this.age}.`
    this.likes.forEach((like) => {
        bio += ` ${this.firstName} likes ${like}.`
    })

    return bio;
}

返回“鲍勃为15。鲍勃喜欢披萨。鲍勃喜欢骑自行车。”

为什么不返回:

'Bob is 15. Bob likes pizza.'
'Bob is 15. Bob likes biking.'

1 个答案:

答案 0 :(得分:1)

虽然第一个陈述在forEach循环之外,所以它仅显示一次,所以您必须将其放入循环中,但请注意,您必须定义bio外部,因为如果在循环中会导致错误

 Person.prototype.getBio = function () {
    let bio='' ;
    this.likes.forEach((like) => {
        bio += `${this.firstName} is ${this.age}.`
        bio += ` ${this.firstName} likes ${like}.`
});
return bio;
}
相关问题