素人がプログラミングを勉強していたブログ

プログラミング、セキュリティ、英語、Webなどのブログ since 2008

連絡先: twitter: @javascripter にどうぞ。

括弧の対応が正しいか調べる

function check(str){
	var stack=0;
	str.split('').forEach(function(str){
			if(str=='(')stack++;
			if(str==')')stack--;
			});
	if(stack==0){
		return 'error';
	}else{
		return 'ok';
	}
}
check((foo(bar(baz))));//'ok'
check(foo));//'ng'

普通に(と)の文字数をカウントして==で調べたほうが早いかも。

参考にしたところ: スタックを使ってHTMLの括弧の対応を調べる - toyosystem