2017-07-05 6 views
0

は私が代わりにこのまたは似たようなものを持っていることができれば、私は思っていたコードjQueryの句または類似

newDocumentState.documents = jQuery.grep(newDocumentState.documents, 
    item => item["documentId"] !== docToRemove.name); 

    $.each(newDocumentState.documents), (index, value) => { 
    this.documentState.addDocument(new DocumentMeta(value.documentId)); 
    }); 

のこのビットを持っているところで、それぞれ。

$.each(newDocumentState.documents.where(x => x.documentId !== docToRemove.name), 
    (index, value) => { 
    this.documentState.addDocument(new DocumentMeta(value.documentId)); 
    }); 
+2

あなたは['filtering'](http://api.jquery.com/filter/) –

+1

またはネイティブの[' filter() '](https://developer.mozilla.org/en)を探していますこれは配列のようですが、jQueryとは何も関係ありません –

+1

javascriptでどのように '=>'の仕事をしていますか? –

答えて

1
 var docToRemoveName ="New"; 
     var documents =[ 
      {"documentId": "New", "class": "class1"}, 
      {"documentId": "New", "class": "class2"}, 
      {"documentId": "Close", "class": "class3"}, 
      {"documentId": "send", "class": "class3"}, 
      {"documentId": "receive", "class": "class3"}]; 

     $.each(documents.filter(
      function (el) { 
       return el.documentId !== docToRemoveName ; 
      }), 
      function(index, value) { 
       alert(index + ": " + value.documentId); 
      }); 

jsfiddleリンク https://jsfiddle.net/o2gxgz9r/9600/

0

私が受け取った答えによると、私はそれが動作します。この

$.each(newDocumentState.documents.filter(obj => obj.documentId !== docToRemove.name), 
        (index, value) => { 
         this.documentState.addDocument(new DocumentMeta(value.documentId)); 
        }); 

を思い付きました。 Tks。