Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Kiểm tra chuỗi lặp lại trong chính nó bằng JavaScript

Viết hàm kiểm tra chuỗi có phải là lặp lại của một tập ký tự con không. Trả về true nếu có, false nếu không.

Ví dụ: 'carcarcarcar' → true (lặp 'car').

Ví dụ

const str = 'carcarcarcar';
const isRepeating = (str = '') => {
  if (!str.length) return false;
  for (let j = 1; j <= str.length / 2; j++) {
    if (str.length % j != 0) continue;
    let flag = true;
    for (let i = j; i < str.length; ++i) {
      if (str[i] != str[i - j]) { flag = false; break; }
    }
    if (flag) return true;
  }
  return false;
};
console.log(isRepeating(str));

Kết quả

true