代码实现
1. JavaScript
function isInBracket(index: number, bracketRange: number[][][], startLevel = 0, endLevel = startLevel) {
/** 目标索引要存在于startLevel,但不存在于endLevel+1 */
let startFlag, endPlusOneFlag: boolean
startFlag = false
if (startLevel == 0) startFlag = true
else if (startLevel - 1 < bracketRange.length) {
for (const range of bracketRange[startLevel - 1]) {
if (index >= range[0] && index <= range[1]) {
startFlag = true; break;
}
}
}
endPlusOneFlag = false
if (endLevel < bracketRange.length) {
for (const range of bracketRange[endLevel]) {
if (index >= range[0] && index <= range[1]) {
endPlusOneFlag = true; break
}
}
}
return startFlag && !endPlusOneFlag
}