/**
  * 
  * @param s string字符串 
  * @return bool布尔型
  */
function isValid( s ) {
    // write code here
    let stk = []
    for(let i = 0;i < s.length;i++){
        switch(s[i]){
            case '(':
                stk.push(s[i]);
                break;
            case '{':
                stk.push(s[i])
                break;
            case '[':
                stk.push(s[i]);
                break;
            case ')':
                if(!stk.length || stk[stk.length - 1] != '('){
                    return false;
                    break;
                }else{
                    stk.pop()
                    break;
                }
            case '}':
                if(!stk.length || stk[stk.length - 1] != '{'){
                    return false
                    break;
                }else{
                    stk.pop()
                    break;
                }
            case ']':
                if(!stk.length || stk[stk.length - 1] != '['){
                    return false
                    break;
                }else{
                    stk.pop()
                    break;
                }
        }
    }
    if(stk.length){
        return false
    }else{
        return true
    }
}
module.exports = {
    isValid : isValid
};
根据大佬的思路写的 分享下