JavaScript 方式解答:
/**
* @param {string} s
* @return {boolean}
*/
var isValid = function(s) {
let arr = s.split('');
if (arr.length % 2 !== 0) return false;
let temp = [];
for(let i = 0; i < arr.length; i++) {
let item = arr[i];
switch(item) {
case '(': {
temp.push(item);
break;
}
case '[': {
temp.push(item);
break;
}
case '{': {
temp.push(item);
break;
}
case ')': {
if (temp.pop() !== '(') return false;
break;
}
case ']': {
if (temp.pop() !== '[') return false;
break;
}
case '}': {
if (temp.pop() !== '{') return false;
break;
}
}
}
return !temp.length;
};
循环数组的时候用for循环,不要用forEach,因为forEach循环不能
return false