2014-07-24 22 views
7

Tôi đang phân tích một mảng bằng cách sử dụng $.each(), nhưng bên trong nó, tôi đang sử dụng phương pháp .splice(), vì vậy tôi cần phải lặp lại. Có thể không?

var store = [...]; 
//... 
var rules = [...]; 
//... 
$.each(store, function(index, element) { // This loop needs to iterate backward 
    $.each(rules, function(index2, rule) { 
     if (element.id == rule.id) { 
      store.splice(index, 1); 
     } 
    }); 
}); 

WARN:

  • Tôi không muốn đảo ngược mảng, nó sẽ không có hành vi tương tự.
  • Ngoài ra tôi biết tôi có thể sử dụng for, tôi chỉ muốn biết nếu nó có thể đạt được bằng $.each
+0

Bản sao có thể có của http://stackoverflow.com/questions/1394020/jquery-each-backwards –

+3

Không, tôi đã nhìn thấy bài đăng này, nó sử dụng '.reverse()' trên mảng. Xin vui lòng, đọc đầy đủ các câu hỏi. – Elfayer

+0

Tôi không thấy lý do tại sao bạn không thể sử dụng băm ở đây (sau đó lọc dựa trên băm này). – raina77ow

Trả lời

1

Bạn có thể sử dụng $ .each nhưng bạn sẽ phải giảm các biến indice (index, index2) như bạn đã làm.

Các vấn đề liên quan