我想實現一個函數,當給出兩個代表行的對象時,返回它們是否重疊。檢查範圍重疊
這是它應該如何看起來像視覺。
實施例1:
checkOverlap({start: 0, end: 10}, {start: 8, end: 15})
在視覺上,將是:
0--------10
8-------15
^overlap
返回true
。
實施例2:
checkOverlap({start: 12, end: 15}, {start: 0, end: 10})
在視覺上,將是:
12-------15
0--------10
no overlap
返回false
。
這裏是我的功能,適用於一些但不是所有:
function checkOverlap(lineA, lineB) {
var result;
for(var a in lineA) {
for(var b in lineB) {
if(a.end > b.start) {
result = true;
} else {
result = true;
}
}
}
return result;
}
* 「它適用於一些但不是所有的」 *爲了什麼輸入不工作?從我可以告訴的是,它不應該工作。做一個'console.log(a,b)'看看'a'和'b'的值究竟是什麼。另外,爲什麼你將相同的值賦給'if'和'else'塊中的'result'?這意味着'result'將總是*爲'true'。你認爲「(A行中的變量)」是什麼意思?你爲什麼使用循環? –
對不起,它不工作,它只是輸出真,其餘的代碼不工作 – sal