/**
* Diffs two datasets of time values.
*
* @param {Array<number>} dataset1 - The first dataset of time values (e.g., timestamps).
* @param {Array<number>} dataset2 - The second dataset of time values.
* @returns {Array<{time: number, diff: number}>} - An array of objects, each containing the time value and the difference between the two datasets.
* Returns an empty array if input datasets are invalid.
*/
function diffTimeDatasets(dataset1, dataset2) {
if (!Array.isArray(dataset1) || !Array.isArray(dataset2)) {
return []; // Handle invalid input
}
if (dataset1.length !== dataset2.length) {
return []; // Handle datasets of different lengths
}
const diffs = [];
for (let i = 0; i < dataset1.length; i++) {
const time1 = dataset1[i];
const time2 = dataset2[i];
if (typeof time1 !== 'number' || typeof time2 !== 'number') {
return []; //Handle non-numeric values
}
const diff = time2 - time1;
diffs.push({ time: time1, diff: diff });
}
return diffs;
}
Add your comment