Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html>
- <head>
- <meta name="description" content="Balanced Parentheses">
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width">
- <title>JS Bin</title>
- </head>
- <body>
- <script id="jsbin-javascript">
- function isBalanced(str){
- if(str.length <= 1) return false;
- let matchingOpeningBracket, ch;
- let stack = [];
- let openBrackets = ['{', '[', '('];
- let closeBrackets = ['}', ']', ')'];
- for(let i = 0; i< str.length; i++) {
- ch = str[i];
- if(closeBrackets.indexOf(ch) > -1){
- matchingOpeningBracket = openBrackets[closeBrackets.indexOf(ch)];
- if(stack.length == 0 || (stack.pop() != matchingOpeningBracket)) {
- return false;
- }
- } else if(openBrackets.indexOf(ch) > -1){
- stack.push(ch);
- }
- }
- return true;
- }
- console.log(isBalanced("([wewewe)]")); // false
- console.log(isBalanced("(erwerwerwer)")); // true
- console.log(isBalanced("{}[]()")); // true
- console.log(isBalanced("{[}]")); // false
- console.log(isBalanced("{[}]")); // false
- console.log(isBalanced("[{()()}({[]})]({}[({})])((((((()[])){}))[]{{{({({({{{{{{}}}}}})})})}}}))[][][]")); // true
- console.log(isBalanced("{}[]()")); // true
- </script>
- <script id="jsbin-source-javascript" type="text/javascript">function isBalanced(str){
- if(str.length <= 1) return false;
- let matchingOpeningBracket, ch;
- let stack = [];
- let openBrackets = ['{', '[', '('];
- let closeBrackets = ['}', ']', ')'];
- for(let i = 0; i< str.length; i++) {
- ch = str[i];
- if(closeBrackets.indexOf(ch) > -1){
- matchingOpeningBracket = openBrackets[closeBrackets.indexOf(ch)];
- if(stack.length == 0 || (stack.pop() != matchingOpeningBracket)) {
- return false;
- }
- } else if(openBrackets.indexOf(ch) > -1){
- stack.push(ch);
- }
- }
- return true;
- }
- console.log(isBalanced("([wewewe)]")); // false
- console.log(isBalanced("(erwerwerwer)")); // true
- console.log(isBalanced("{}[]()")); // true
- console.log(isBalanced("{[}]")); // false
- console.log(isBalanced("{[}]")); // false
- console.log(isBalanced("[{()()}({[]})]({}[({})])((((((()[])){}))[]{{{({({({{{{{{}}}}}})})})}}}))[][][]")); // true
- console.log(isBalanced("{}[]()")); // true</script></body>
- </html>
Add Comment
Please, Sign In to add comment