function isMap (str) {
if (!str.length) {
throw Error('传入字符串无有效括弧!')
}
let list = [],
length = str.length,
map = {
'{': '}',
'[': ']',
'(': ')'
};
for (var i =0; i <length; i++) {
if (list.length && map[list[list.length -1]] === str.charAt(i)) {
list.pop();
} else {
list.push(str.charAt(i));
}
}
return !list.length;
}
截图: