将对象数组传递给另一个对象 class
Pass an array of objects into another class
假设我有一个 class:
class Intern{
constructor(name, mark) {
this.name = name
this.mark = mark
}
getMark() {return mark}
}
let a = new Intern('John', 10) // let's say I create 3 objects of this class
let b = new Intern('Marry', 9)
let c = new Intern('Anne', 8)
如何将一组实习生作为参数传递给另一个 class 导师?
我可以创建一个空数组并这样做:
arr = []
Mentor{
constructor(name, arr){
this.name
this.arr
}
getMentorHappiness() = this.arr.Intern.mark * 2
}
对吗?因此,根据我 select 哪个导师的依赖,它将向我展示只有这位导师教的这些实习生唯一获得幸福的方法。类似的东西:
let d = new Mentor('Dean', [Anne, John]
let e = new Mentor('Sam', [Marry])
我想我必须以某种方式参考基于 Mentors 对象数组输入的信息?
这里有几件事:
- 你忘了导师是 class ( class 导师)
- 忘记从构造函数中赋值
- 忘记return getMentorHappiness 函数的值
- 您需要将带有实习生的数组传递给 Mentor 构造函数,而不是空数组
- 然后您需要以某种方式寻址实习生数组以从中获取标记
- 忘了引用这个。在实习生标记为 return
下面是重构代码的示例,有效
class Intern{
constructor(name, mark) {
this.name = name;
this.mark = mark;
}
getMark() {return this.mark;}
}
class Mentor{
constructor(name, arr) {
this.name = name;
this.arr = arr;
}
getMentorHappiness() {
let sum = 0;
for (let intern of this.arr) {
sum += intern.getMark();
}
return sum / this.arr.length * 2
}
}
// driver code to test
let a = new Intern('John', 10);
let b = new Intern('Marry', 9);
let c = new Intern('Anne', 8);
let d = new Mentor('Dean', [a, b, c]);
console.log(d.getMentorHappiness());
console.log(a.getMark());
console.log(d.arr[0].getMark());
此功能将计算特定导师实习生的平均值。请注意它在原始问题中乘以 2
假设我有一个 class:
class Intern{
constructor(name, mark) {
this.name = name
this.mark = mark
}
getMark() {return mark}
}
let a = new Intern('John', 10) // let's say I create 3 objects of this class
let b = new Intern('Marry', 9)
let c = new Intern('Anne', 8)
如何将一组实习生作为参数传递给另一个 class 导师? 我可以创建一个空数组并这样做:
arr = []
Mentor{
constructor(name, arr){
this.name
this.arr
}
getMentorHappiness() = this.arr.Intern.mark * 2
}
对吗?因此,根据我 select 哪个导师的依赖,它将向我展示只有这位导师教的这些实习生唯一获得幸福的方法。类似的东西:
let d = new Mentor('Dean', [Anne, John]
let e = new Mentor('Sam', [Marry])
我想我必须以某种方式参考基于 Mentors 对象数组输入的信息?
这里有几件事:
- 你忘了导师是 class ( class 导师)
- 忘记从构造函数中赋值
- 忘记return getMentorHappiness 函数的值
- 您需要将带有实习生的数组传递给 Mentor 构造函数,而不是空数组
- 然后您需要以某种方式寻址实习生数组以从中获取标记
- 忘了引用这个。在实习生标记为 return
下面是重构代码的示例,有效
class Intern{
constructor(name, mark) {
this.name = name;
this.mark = mark;
}
getMark() {return this.mark;}
}
class Mentor{
constructor(name, arr) {
this.name = name;
this.arr = arr;
}
getMentorHappiness() {
let sum = 0;
for (let intern of this.arr) {
sum += intern.getMark();
}
return sum / this.arr.length * 2
}
}
// driver code to test
let a = new Intern('John', 10);
let b = new Intern('Marry', 9);
let c = new Intern('Anne', 8);
let d = new Mentor('Dean', [a, b, c]);
console.log(d.getMentorHappiness());
console.log(a.getMark());
console.log(d.arr[0].getMark());
此功能将计算特定导师实习生的平均值。请注意它在原始问题中乘以 2