Javascript 如何实现缺少括号的计数?

Javascript 如何实现缺少括号的计数?,javascript,Javascript,例如: 我有一个字符串只包含括号“(”和“)”。如何计算缺少的括号 我的代码: var str = '(())'; var open = 0, close = 0, count = 0; for (var i = 0; i < str.length; i++) { if (str[i] == '(') { open++; count = Math.abs(open - close); } else { close++; count = Math.ab

例如: 我有一个字符串只包含括号“(”和“)”。如何计算缺少的括号

我的代码:

var str = '(())';
var open = 0, close = 0, count = 0;
for (var i = 0; i < str.length; i++) {
  if (str[i] == '(') {
    open++;
    count = Math.abs(open - close);
  } else {
    close++;
    count = Math.abs(open - close);
  }
}
console.log(count);
var str='(())';
var open=0,close=0,count=0;
对于(变量i=0;i
输入:“(())” 输出:0

输入:'(()' 产出:1

输入:')(' 产出:4

输入:'(()(' 产出:2

输入:“(())(())(())(())”
输出:1

在未来,最好提供您迄今为止尝试过的内容

但我喜欢这个问题,这里有一个片段显示了它的作用:

问题是,当出现结束括号且没有开始括号时,您需要添加“缺失”计数

函数计数缺失(输入){
设danglingEnds=0;
设开放=0;
for(输入的常量字符){
如果(字符=='(')打开++;
如果(字符==''),则为else{
如果(打开===0)danglingEnds++;
否则打开--;
}
}
返回打开+挂起;
}
console.log(countMissing(“(())”);
console.log(countMissing(“(()”));
console.log(countMissing('))(');
console.log(countMissing(')(()('));

log(countMissing('(())(())(()))(()));
您可以替换完美的括号并计算其余的括号

函数缺失(字符串){
变种l;
做{
l=字符串长度;
string=string.replace(/\(\)/g',);
}while(l!==string.length)
返回字符串长度;
}
console.log(缺少(“(())”);//0
console.log(缺少(“(()”);//1
console.log(缺少(')(');//4
console.log(缺少(')(()(');//2

console.log(缺少('(())(())(())(());/3
好问题,您尝试了什么?请提供一些您迄今为止尝试过的代码,否则可能只是作业。循环字符串中的字符。对于遇到的每一个
),为每一个
)添加1
你遇到的,减去1。剩下的是缺少括号的数量。@nbokmans不适用于
))((“
Hi!请通读,尤其是你在这里的最佳选择是做相关的研究,并尝试一下。如果你在做了更多的研究和搜索后陷入困境,无法摆脱困境,请发布你的尝试,并明确说明你陷入困境的地方。人们会很乐意提供帮助。这个答案比汉矿