检查JavaScript中括号的有效性
我们需要编写一个JavaScript函数,该函数接受仅包含字符的字符串str-
'(', ')', '{', '}', '[' and ']'我们的函数应确定输入字符串是否有效。
输入字符串在以下情况下有效-
开括号必须用相同类型的括号封闭。
开括号必须以正确的顺序关闭。
例如-
“()”是有效的括号
“()[]{}”是有效的括号
“(]”是无效的括号
示例
为此的代码将是-
const str = "()[]{}";
const isValid = (str = '') => {
const map=new Map();
map.set('{','}');
map.set('(',')');
map.set('[',']');
const b=[];
for(let i=0;i<str.length;i++){
if(map.has(str.charAt(i))){
b.push(str.charAt(i));
} else{
let pop=b.pop();
if(map.get(pop)!==str.charAt(i)){
return false;
}
};
};
return b.length===0;
};
console.log(isValid(str));输出结果
控制台中的输出将是-
true false