私は次のような配列を持っています
var myArray = [{'id':'73','name':'john'},{'id':'45','name':'Jass'}, etc.]
配列からこの特定のオブジェクトを選択する方法はid
73です。 grep jQueryでこれを簡単に行うことができると思いますこれを行うのですか?
angularを使用してアプリを開発するほとんどのユーザーは、常にオブジェクトの配列(主にテーブル用)からデータを取得するため、このためのヘルパー関数が必要ですか?
オブジェクトの配列を更新することで、行のIDで行のデータを変更できます。
これをビューにバインドしたくありません。データを操作し、関数を使用してデータを更新したい。
例えば。表のリストがあります。エンドユーザーがテーブルの行を編集する場合、オブジェクトのIDがあるため、エンドユーザーが保存を押した後、配列を更新してからテーブルリストに戻る必要があります。
角度のfilter
を使用できます https://docs.angularjs.org/api/ng/filter/filter
コントローラーで:
$filter('filter')(myArray, {'id':73})
またはあなたのHTMLで
{{ myArray | filter : {'id':73} }}
プレーンなJavaScriptはどうですか? Array.prototype.filter()
の詳細 。
var myArray = [{'id': '73', 'name': 'john'}, {'id': '45', 'name': 'Jass'}]
var item73 = myArray.filter(function(item) {
return item.id === '73';
})[0];
// even nicer with ES6 arrow functions:
// var item73 = myArray.filter(i => i.id === '73')[0];
console.log(item73); // {"id": "73", "name": "john"}
完全なM B
回答については、HTMLの配列から既にフィルター処理されたこのオブジェクトの特定の属性にアクセスする場合、次のように行う必要があります。
{{ (myArray | filter : {'id':73})[0].name }}
したがって、この場合、HTMLでjohn
を出力します。
よろしく!
私のために働く解決策は次のとおりです
$filter('filter')(data, {'id':10})