1) ëï àðé éåãò, öøéê ìòáåø ì- let.
îöàúé ãøê ìáöò àú äùîú äòøëéí ìàåáéé÷è ä Map áùåøä àçú :
àáì äñéðè÷ñ äæä òãééï ìà òåáã ìé á WEBSTORM ùì JETBRAIN àåìé öøéê ìîöåà âéøñä îòåãëðú éåúø ùì V8.÷åã HTML:let myMap = new Map([ ['[', ']'], ['(',')'] , ['<','>'],['”', '”'] ]);
2) àéê äùéîåù áøâ÷ñ îéåúø àí àúä îùúîù áå áãåâîà ùìê ?
äùéîåù áøâ÷ñ îàôùø ìé ìäîðò î- SWITCH CASE àøåê åîñåøáì.
éëåìúé ìäùúîù áîåðä ìëì ñåâ ñåâøééí, àáì àæ ä÷åã éäéä îñåøáì äøáä ôçåú ÷øéà å÷ùä ìúçæå÷ä.
áî÷åí æä àðé îùúîù á HASH TABLE ùáòâä ùì ES6 ð÷øà Map, ëìåîø îùäå ùîçæé÷ æåâåú ùì KEY å- VALUE
3) ä÷åã òåáã ìé ôøô÷è.
äôìåå ùì äúåëðéú äåà :
à) àðé éåöø àåáéé÷è ùì îàô, ä KEY äåà äñåâø éîðé åä VALUE äåà äñåâø äùîàìé,
á) àðé òåáø áìåìàä òì äîçøåæú, úå úå,
1)áåã÷ ò"é ùéîåù áøâ÷ñ REGOPEN äàí äúå äðåëçé äåà îñåâ ñåâø-ùîàìé àí ëï ãåçó àåúå ìîçñðéú åòåáø ìúå äáà,
àí ìà,
2) áåã÷ äàí äúå äåà îñåâ ñåâø- éîðé, àí ëï, àðé ùåìó îäîçñðéú àú äñåâø äùîàìé äàçøåï ùðãçó àìéä
åò"é ÷øéàä ìîúåãú GET ùì MAP äî÷áìú ëàøâîåðè KEY åîçæéøä VALUE àðé î÷áì àú äñåâø äéîðé (ùì äñâéøä)
äîúàéí ìñåâø äùîàìé (äôåúç) ùðùìó îäîçñðéú,
ëòú àðé éëåì ìáãå÷ áòöí àí äñåâø äùîàìé äàçøåï áîçøåæú îúàéí ìñåâø äéîðé , àí ìà àðé éåöà îäôåð÷öéä òí àôñ,
àí ëï, àðé îîùéê äìàä áìåìàä ëé ä POP ùäùúîùúé ìáãé÷ä ëáø äòéó ìé àú äñåâø äùîàìé äàçøåï áîçñðéú,
â) àçøé ùéöàúé îäìåìàä àðé áåã÷ äàí äîçñðéú øé÷ä, àí ëï äñåâøééí î÷åððåú ðëåï åîçæéø 1 àçøú îçæéø 0.
ìâáé ä÷åã: ëúáúé âéøñä ììà ùéîåù á SPLIT åäúåëðéú îöìéçä òí ëì äèñèéí ùäáàúé ÷åãí åâí àçøéí.
÷åã PHP:function verify(text){
var stack = new Array();
var myMap = new Map();
myMap.set('[' ,']');
myMap.set('(',')');
myMap.set( '<','>');
myMap.set('”', '”');
var regOpen = /[([<"]/ ;
var regClose = /[\)\]\>"]/ ;
var length= text.length-1;
var pop;
for (i=0;i<=length; i++ )
{ if( text.charAt(i).match(regOpen) )
stack.push( text.charAt(i));
else if( text.charAt(i).match(regClose) )
{ pop = myMap.get(stack.pop());
if( pop!= text.charAt(i) )
return 0;
} } return (stack.length==0 ? 1:0);}


öéèåè ääåãòä áúâåáä