Chúng tôi bắt buộc phải viết một hàm JavaScript có trong một chuỗi có thể chứa một số dấu ngoặc mở và đóng. Hàm sẽ cho dù đối với tất cả các dấu ngoặc mở, có tồn tại một dấu ngoặc đóng hay không. Nếu các dấu ngoặc được khớp đúng, hàm sẽ trả về true, ngược lại là false.
Ví dụ -
f('(hello (world))') = true f('(hello (world)') = false
Ví dụ
Sau đây là mã -
const str1 = '(hello (world))'; const str2 = '(hello (world)'; const validateBrackets = (str = '') => { const strArr = str.split(''); let counter = 0; for (let i = 0, len = strArr.length; i < len; i++) { if (strArr[i] === "(") { counter++; }else if (strArr[i] === ")") { counter--; }; if (counter < 0) { return false; }; }; if (counter === 0) { return true; }; return false; }; console.log(validateBrackets(str1)); console.log(validateBrackets(str2));
Đầu ra
Sau đây là kết quả trên bảng điều khiển -
true false