timeseries是以下格式的数组:
[ {"date": "2012-12-21", "price": 1.234}, ... ]
我的代码:
function first(timeseries) {
if (timeseries.length === 0) {
return undefined;
}
var earliestIndex = 0;
for (var i = 0; i < timeseries.length; i++) {
if (timeseries[i].date === null) {
throw new Error("no date");
} else {
if(Date.parse(timeseries[i].date) < Date.parse(timeseries[earliestIndex].date)) {
earliestIndex = i;
}
}
}
return timeseries[earliestIndex].price;
}
测试结果:
未提供时,问题未指定日期的确切值。
为什么会这样呢?我已经抛出一个错误。
最佳答案
涵盖所有情况的几个建议。
==
而不是===
,因为它还会在检查之前进行必要的类型转换。 引用:https://stackoverflow.com/a/359509/4874271
提示:在此处复制代码并设置其格式,而不是发布照片,这会使人们更容易回答。 :)
关于javascript - 为什么即使我已经执行过此测试,仍然期望我的函数抛出错误?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39118011/