js实现括号匹配问题

isValid(){
                let str = '{{}()()}'

                let stack = []
                let map = new Map([
                    ['(',')'],
                    ['[',']'],
                    ['{','}'],
                ])

                let len = str.length

                for(let i =0; i < len; i++){
                    if(map.has(str[i])){
                        stack.push(str[i])
                    }
                    else{
                        if(stack.length === 0){
                            return false
                        }else{
                            if(map.get(stack.pop()) !== str[i]){
                                return false
                            }
                        }
                    }
                }

                 return !stack.length


            }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容