Open qiilee opened 4 years ago
const person = { name: "Lydia Hallie", hobbies: ["coding"] }; function addHobby(hobby, hobbies = person.hobbies) { hobbies.push(hobby); return hobbies; } addHobby("running", []); addHobby("dancing"); addHobby("baking", person.hobbies); console.log(person.hobbies);
A:["coding"] B: ["coding", "dancing"] C: ["coding", "dancing", "baking"] D: ["coding", "running", "dancing","baking"]
答案:C
解析:
函数 addHobby 接受两个参数,hobby 和有看对象 person 中数组 hobbies 默认值的 hobbies。
首先,我们调用函数 addHobby ,并给 hobby 传递'running'以及 hobbies 传递一个空数组。因为我们给 hobbies 传递了空数组,'running' 被 添加到这个空数组。
然后,我们调用函数 addHobby ,并给 hobby 传递'dancing'。我们不向 hobbies 传递值,因此它获取其默认值---对象 person 的属性 hobbies。我们向数组 person.hobbies push dancing
最后,我们调用函数 addHobby ,并向 hobby 传递值'baking',并且向 hobbies 传递 person.hobbies。我们向数组 person.hobbies push dancing。
pushing dancing 和 baking 之后,person.hobbies 的值为['coding','dancing’,'baking']
答案:C
解析:
函数 addHobby 接受两个参数,hobby 和有看对象 person 中数组 hobbies 默认值的 hobbies。
首先,我们调用函数 addHobby ,并给 hobby 传递'running'以及 hobbies 传递一个空数组。因为我们给 hobbies 传递了空数组,'running' 被 添加到这个空数组。
然后,我们调用函数 addHobby ,并给 hobby 传递'dancing'。我们不向 hobbies 传递值,因此它获取其默认值---对象 person 的属性 hobbies。我们向数组 person.hobbies push dancing
最后,我们调用函数 addHobby ,并向 hobby 传递值'baking',并且向 hobbies 传递 person.hobbies。我们向数组 person.hobbies push dancing。
pushing dancing 和 baking 之后,person.hobbies 的值为['coding','dancing’,'baking']