这段代码显示了两个对象数组是否为真,这很好……如何管理此代码来记录哪些答案不相等?
数组模型,arrayA是用户回答的问题数组,arrayB是正确答案
arrayA: { id: number; answer: number }[] = [];
arrayB: { id: number; answer: number }[] = [];推送功能:
arraysEqual(arrayA, arrayB)arraysEqual = (a1, a2) =>
a1.length === a2.length &&
a1.every((o, idx) => this.objectsEqual(o, a2[idx]));
objectsEqual = (o1, o2) =>
typeof o1 === "object" && Object.keys(o1).length > 0
? Object.keys(o1).length === Object.keys(o2).length &&
Object.keys(o1).every(p => this.objectsEqual(o1[p], o2[p]))
: o1 === o2;发布于 2019-06-08 18:48:11
如果一个函数返回a1和a2不同的索引数组,情况会怎样呢?
类似于:
function arraysUnequal(a1, a2)
{
let result = [];
let maxindex = (a1.length > a2.length) ? a1.length : a2.length;
for (let i = 0; i < maxindex; i++)
{
if (!objectsEqual(a1[i]||{}, a2[i]||{})) { result.push(i) }
}
return result;
}https://stackoverflow.com/questions/56505329
复制相似问题