Tôi có một mảng JavaScript như:tìm nạp JavaScript phần tử mảng sau khi xảy ra liên tiếp của một phần tử
var myArray = ['a', 'x', 'b', 'x', 'x', 'p', 'y', 'x', 'x', 'b', 'x', 'x'];
Tôi muốn lấy chỉ những yếu tố của mảng mà đến sau 2 lần xuất hiện hậu quả của một yếu tố cụ thể.
tức là trong mảng trên, tôi muốn lấy tất cả các yếu tố đó đến sau khi quả 'x', 'x'
Vì vậy, đầu ra của tôi nên là:
'p'
'b'
tôi có một giải pháp như:
var arrLength = myArray.length;
for (var i = 0; i < arrLength; i++) {
if(i+2 < arrLength && myArray[i] == 'x' && myArray[i+1] == 'x') {
console.log(myArray[i+2]);
}
};
Điều này đáp ứng nhu cầu của tôi, nhưng nó không phải là quá chung chung.
Ví dụ: nếu tôi phải kiểm tra 3 lần xảy ra hậu quả, thì tôi phải thêm một điều kiện bên trong nếu cho myArray[i+2] == 'x'
và cứ như vậy.
Có ai có thể cung cấp cách tốt hơn để tìm nạp các phần tử không?
Nếu bạn có 4 '' x'' thì sao? Nếu thứ 3 được tìm nạp? Do các 3rd và 4rt lấy mục sau đây? – Oriol
Các phần tử mảng luôn là các chữ cái đơn? Đây thực chất là một vấn đề chuỗi (với nhiều giải pháp tốt và hiệu quả), mặc dù không có giải pháp nào được thực thi trên 'Array' – Bergi
@Bergi, tôi muốn một giải pháp chung để mảng này có thể chứa một chữ cái hoặc có thể là một chuỗi . –