JSFiddle - React, Tailwind, and code Playground
by Nic Fontaine
JavaScript
/**
* @param {string} s
* @return {boolean}
*/
var isValid = function(s) {
const pairs = {
"(": ")",
"{": "}",
"[": "]"
};
let i = 0;
const len = s.length;
s = s.split("");
// Not even length
if (len % 2 > 0) return false;
var store = [];
for (i; i<len; i++) {
// Check if opening
if (Object.keys(pairs).indexOf(s[i]) > -1) {
console.log("opening");
store.push(s[i]);
}
// Compare opening with store
else if (pairs[store.pop()] !== s[i]) {
return false;
}
console.log(store);
}
return store.length === 0;
};
console.log(isValid("()"));