25、如果我们在测试中忘记调用 done() 会发生什么?
由于回调函数是无序运行的,Mocha 需要知道每个测试何时完成。若忘记调用 done() ,Mocha 无法知晓测试何时结束,可能导致测试无法正常结束或后续测试无法正常执行。
26、Implement it.(执行它。)
执行它。
27、给定一个包含颜色信息的数组,每个颜色对象包含 red 和 green 属性,分别表示红色值和绿色值,编写代码按红色值递增和绿色值递减对颜色值进行排序。
可使用以下代码实现:
const sortedColors = colors.orderBy(row => parseInt(row.red)).thenByDescending(row => parseInt(row.green));
console.log(sortedColors.toArray());
28、使用 data - forge 对 surveys.csv 文件进行聚合操作,找到年份、后足长度和体重的最小值、最大值和平均值。
可以使用 data-forge 的相关方法编写函数来实现:
如编写 getSurveyStats 方法获取年份的最小值、最大值和记录数量:
getSurveyStats() {
return {
year_low: this.data.deflate(row => row.year).min(),
year_high: this.data.deflate(row => row.year).max(),
record_count: this.data.count()
};
}
编写 getSurveyRange 方法获取指定年份范围内后足长度和体重的最小值、最大值和平均值,同时要注意处理缺失数据和空系列的情况:
getSurveyRange(minYear, maxYear) {
return Array(1 + maxYear - minYear)
.fill(0)
.map((v, i) => minYear + i)
.map(year => {
const subset = this.data.where(row => row.year === year);
if (subset.count()) {
return {
key: toString(year),
year: year,
min_hindfoot_length: this._getMin(subset, 'hindfoot_length'),
ave_hindfoot_length: this._getAve(subset, 'hindfoot_length'),
max_hindfoot_length: this._getMax(subset, 'hindfoot_length'),
min_weight: this._getMin(subset, 'weight'),
ave_weight: this._getAve(subset, 'weight'),
max_weight: this._getMax(subset, 'weight')
};
}
});
}
其中 _getMin 、 _getAve 、 _getMax 等内部方法可确保数据存在时才进行汇总。
29、回顾计算不同震级地震平均深度的示例步骤,并展示每次方法调用后的数据结构。它们都是数据框吗,还是也创建或操作了其他数据结构?
-
groupBy调用:产生一个包含 28 个数据框的列表,每个数据框对应震级的一个不同值。数据结构为数据框列表。 -
select调用:将每个数据框转换为一个对象,对象包含震级和平均深度。数据结构为包含对象的系列(Series)。 -
inflate调用:将系列转换回数据框。数据结构为数据框。 -
orderBy调用:按震级对数据框进行排序。数据结构为数据框。
所以,除了数据框,还创建和操作了系列(Series)和对象等数据结构。
30、前端的SurveyStats和DataDisplay组件都用于显示表格。编写一个新的组件TableDisplay,该组件在给定列名列表和对象列表(所有对象至少包含这些字段)的情况下,能够显示任意表格。
以下是实现 TableDisplay 组件的代码示例:
import React from 'react';
const TableDispla

最低0.47元/天 解锁文章
802

被折叠的 条评论
为什么被折叠?



