Computer >> Máy Tính >  >> Lập trình >> Javascript

Xác thực một chuỗi với các số có trong nó trong JavaScript

Vấn đề

Chúng tôi được yêu cầu viết một hàm JavaScript sử dụng một chuỗi str. Hàm của chúng ta phải xác thực các bảng chữ cái trong chuỗi dựa trên các số trước chúng.

Chúng ta cần chia chuỗi theo các số, sau đó so sánh các số với số ký tự trong chuỗi con sau. Nếu tất cả chúng đều khớp, thì chuỗi hợp lệ và chúng ta phải trả về true, ngược lại là false.

Ví dụ -

5hello4from2me

nên trả về true

Bởi vì khi được chia theo số, chuỗi sẽ trở thành "hello", "from", "me" và tất cả các chuỗi này có cùng độ dài với số đứng trước chúng

Ví dụ

Sau đây là mã -

const str = '5hello4from2me';
const validateString = (str = '') => {
   const lenArray = [];
   let temp = '';
   for(let i = 0; i < str.length; i++){
      const el = str[i];
      if(+el){
         lenArray.push([+el, '']);
      }else{
         const { length: len } = lenArray;
         lenArray[len - 1][1] += el;
      };
   };
   return lenArray.every(sub => sub[0] === sub[1].length);
};
console.log(validateString(str));

Đầu ra

Sau đây là đầu ra của bảng điều khiển -

true