Realmコレクション

Realm.ListRealm.Resultsで共有されるメソッドを含む抽象基本クラス。

Realm コレクションは、Realm オブジェクトのプロパティとして保存できる任意の型の値の同種シーケンスです。 コレクションには、サブスクリプション、for-of での列挙など、通常のJavaScript配列が実行できる方法のいずれかでアクセスできます。

コレクションは、Realm の現在の状態を常に反映します。 これに対する 1 つの例外は、 for...inまたはfor...of列挙型を使用している場合です。これらのオブジェクトは、列挙が開始されると、接続中にフィルターによって除外されるように削除または変更された場合でも、常にクエリに一致したオブジェクトを列挙します。列挙。

から: 0.11.0
Length
readOnly

コレクション内の値の数。

タイプ:
number
任意
readOnly

nullはコレクションに対して有効な値であるかどうか。

タイプ:
boolean
タイプ
readOnly

コレクション内の値の

タイプ:
string
addLister(コールバック)

ライブコレクション インスタンスが変更されたときに呼び出されるリスナーcallbackを追加します。

パラメーター:
  • コールバック
    • タイプ: function
    • 変更が発生したときに呼び出される関数。 コールバック関数は 2 つの引数を指定して呼び出されます。

      • collection: 変更されたコレクション インスタンス
      • changes: insertionsnewModificationsoldModificationsdeletionsのキーを含む辞書で、それぞれ挿入、アップデート、または削除されたコレクション内のインデックスのリストが含まれています。 deletionsoldModificationsは変更が発生する前のコレクションのインデックスであり、 insertionsnewModificationsはコレクションの新しいバージョンのインデックスです。
の例外をスローします。
  • Error
    • callbackが関数でない場合。

:
wines.addListener((collection, changes) => {
 // collection === wines
 console.log(`${changes.insertions.length} insertions`);
 console.log(`${changes.modifications.length} modifications`);
 console.log(`${changes.deletions.length} deletions`);
 console.log(`new size of collection: ${collection.length}`);
});
avgプロパティnumber

コレクション内の値またはコレクション内のすべてのオブジェクト内の指定された プロパティの値の平均を計算します。コレクションが空の場合はundefinedです。

int、float、double プロパティでのみサポートされます。 このメソッドではnull値は完全に無視され、平均に係数は考慮されません。

パラメーター:
  • プロパティ 任意
    • タイプ: string
    • オブジェクトのコレクションの場合、プロパティは の平均になります。

の例外をスローします。
  • Error
    • 名前を持つプロパティが存在しない場合、またはプロパティが数値でない場合。

返します: numberの合計。
エントリ()Iterator<T>
次を参照してください。 Array.prototype.entries
Iterator<T>[index, object]コレクション内の各 ペアの を 返します
すべて(コールバック、このArgboolean
次を参照してください。 Array.prototype.every
パラメーター:
  • コールバック
    • タイプ: function
    • コレクション内の各オブジェクトで実行する関数。 この関数がすべてのオブジェクトに対してtrueを返す場合、このメソッドはtrueを返します。 この関数は 3 つの引数を取ります。

      • object - コレクション内で処理されている現在オブジェクト。
      • index - コレクション内で処理されているオブジェクトのインデックス。
      • collection - コレクション自体。
  • このArg 任意
    • タイプ: object
    • callbackが呼び出されるときのthisの値。

booleancallbacktrueコレクション内のすべてのオブジェクトに対して が を返したかどうかを表す : を 返します 。
フィルタリングしました(クエリ、引数Realm.Results<T>

指定されたクエリによってフィルタリングされているこのコレクションを表す新しい結果を返します。

パラメーター:
  • クエリ
    • タイプ: string
    • コレクションのオブジェクトをフィルタリングするために使用されるクエリ。

  • arg 任意 再現可能
    • タイプ: any
    • 後続の各引数はプレースホルダー(例: クエリ内の$0$1$2 、...)を含むドキュメントをインポートします。

の例外をスローします。
  • Error
    • このメソッドに渡されるクエリまたはその他の引数が無効な場合。

指定されたクエリに従ってフィルタリングされた : Realm.Results<T>返します。これは現在、Realm オブジェクトのコレクションでのみサポートされています。クエリ言語の詳細については、「 クエリ言語 」を参照してください。
:
let merlots = wines.filtered('variety == "Merlot" && vintage 
find(コールバック、このArgT or undefined
次を参照してください。 Array.prototype.find
パラメーター:
  • コールバック
    • タイプ: function
    • コレクション内の各オブジェクトで実行する関数。 この関数がtrueを返す場合、そのオブジェクトはこのメソッドによって返されます。 この関数は 3 つの引数を取ります。

      • object - コレクション内で処理されている現在オブジェクト。
      • index - コレクション内で処理されているオブジェクトのインデックス。
      • collection - コレクション自体。
  • このArg 任意
    • タイプ: object
    • callbackが呼び出されるときのthisの値。

コレクション内のいずれのオブジェクトに対してもTundefined を返さなかった場合はcallback true: または を 返します 。
findIndex(コールバック、このArgnumber
次を参照してください。 Array.prototype.findIndex
パラメーター:
  • コールバック
    • タイプ: function
    • コレクション内の各オブジェクトで実行する関数。 この関数がtrueを返す場合、そのオブジェクトのインデックスがこのメソッドによって返されます。 この関数は 3 つの引数を取ります。

      • object - コレクション内で処理されている現在オブジェクト。
      • index - コレクション内で処理されているオブジェクトのインデックス。
      • collection - コレクション自体。
  • このArg 任意
    • タイプ: object
    • callbackが呼び出されるときのthisの値。

numbercallbacktrue-1trueは、 が を返したインデックスを表す : を 返し が返されなかった場合は を返します。
forEach(コールバック、このArg
次を参照してください。 Array.prototype.forEach
パラメーター:
  • コールバック
    • タイプ: function
    • コレクション内の各オブジェクトで実行する関数。 この関数は 3 つの引数を取ります。

      • object - コレクション内で処理されている現在オブジェクト。
      • index - コレクション内で処理されているオブジェクトのインデックス。
      • collection - コレクション自体。
  • このArg 任意
    • タイプ: object
    • callbackが呼び出されるときのthisの値。

indexOf(オブジェクト)number

コレクション内の指定されたオブジェクトのインデックスを検索します。

パラメーター:
  • オブジェクト
    • タイプ: T
    • コレクションで検索する値。

の例外をスローします。
  • Error
    • 引数がコレクションと同じ Realm に属していないRealm.Objectの場合。

number値が見つかったインデックスを表す-1 : 、コレクションにない場合は を 返します 。
isEmpty()boolean

このコレクションが空かどうかを確認します。

booleanコレクションが空かどうかを示す : を 返します 。
isValid()boolean

このコレクションが削除されておらず、有効な Realm の一部であるかどうかを確認します。

booleanコレクションに安全にアクセスできるかどうかを示す : を 返し ます。
join区切り文字string

コレクション内のすべてのオブジェクトを string に結合します。

次を参照してください。 Array.prototype.join
パラメーター:
  • セパレーター 任意
    • タイプ: string
    • デフォルト: ","
    • コレクション内の各オブジェクトで呼び出されるtoString()メソッドの戻り値を区別する string。

戻り値: string
キー()Iterator<T>
次を参照してください。 Array.prototype.keys
Iterator<T>コレクション内の各インデックスの : を 返します
map(コールバック、このArg[any, ...]
次を参照してください。 Array.prototype.map
パラメーター:
  • コールバック
    • タイプ: function
    • コレクション内の各オブジェクトで実行する関数。 この関数は 3 つの引数を取ります。

      • object - コレクション内で処理されている現在オブジェクト。
      • index - コレクション内で処理されているオブジェクトのインデックス。
      • collection - コレクション自体。
  • このArg 任意
    • タイプ: object
    • callbackが呼び出されるときのthisの値。

返します: [any, ...] - コレクション内のすべてのオブジェクトで呼び出された後、 callbackの戻り値。
最大プロパティnumber

コレクション内の値、またはコレクション内のすべてのオブジェクト内の指定されたプロパティの最大値を返します。コレクションが空の場合はundefinedです。

int、float、double、date プロパティでのみサポートされます。 null値はこのメソッドによって完全に無視され、返されません。

パラメーター:
  • プロパティ 任意
    • タイプ: string
    • オブジェクトのコレクションの場合、 プロパティは最大 の値を取得します。

の例外をスローします。
  • Error
    • 名前を持つプロパティが存在しない場合、またはプロパティが数値または日付でない場合。

number最大値 : を 返します 。
minプロパティnumber

コレクション内の値、またはコレクション内のすべてのオブジェクト内の指定されたプロパティの最小値を返します。コレクションが空の場合はundefinedです。

int、float、double、date プロパティでのみサポートされます。 null値はこのメソッドによって完全に無視され、返されません。

パラメーター:
  • プロパティ 任意
    • タイプ: string
    • オブジェクトのコレクションの場合、 プロパティは の最小値をとります。

の例外をスローします。
  • Error
    • 名前を持つプロパティが存在しない場合、またはプロパティが数値または日付でない場合。

最小値 : をnumber 返します 。
reduce(コールバック、 initialValueany
次を参照してください。 Array.prototype.reduce
パラメーター:
  • コールバック
    • タイプ: function
    • コレクション内の各オブジェクトで実行する関数。 この関数は 4 つの引数を取ります。

      • previousValue - コールバックの最後の呼び出しで返された値、または指定されている場合はinitialValue
      • object - コレクション内で処理されている現在オブジェクト。
      • index - コレクション内で処理されているオブジェクトのインデックス。
      • collection - コレクション自体。
  • initialValue 任意
    • タイプ: object
    • callbackの最初の呼び出しの最初の引数として使用する値。

の例外をスローします。
  • TypeError
    • コレクションが空で、 initialValueが指定されていない場合。

返します: any - callbackの最後の呼び出しによって返された値。ただし、次の特殊なケースを除く
  • コレクションが 1 つのオブジェクトで構成されており、 initalValueが指定されていない場合は、そのオブジェクトが返されます。
  • コレクションが空の場合は、 initialValueを指定する必要があります。また、この値が返されます。
reduceR right(コールバック、 initialValueany
次を参照してください。 Array.prototype.reduceR right
パラメーター:
  • コールバック
    • タイプ: function
    • コレクション内の右から左まで、各オブジェクトに対して実行する関数。 この関数は 4 つの引数を取ります。

      • previousValue - コールバックの最後の呼び出しで返された値、または指定されている場合はinitialValue
      • object - コレクション内で処理されている現在オブジェクト。
      • index - コレクション内で処理されているオブジェクトのインデックス。
      • collection - コレクション自体。
  • initialValue 任意
    • タイプ: object
    • callbackの最初の呼び出しの最初の引数として使用する値。

の例外をスローします。
  • TypeError
    • コレクションが空で、 initialValueが指定されていない場合。

返します: any - callbackの最後の呼び出しによって返された値。ただし、次の特殊なケースを除く
  • コレクションが 1 つのオブジェクトで構成されており、 initalValueが指定されていない場合は、そのオブジェクトが返されます。
  • コレクションが空の場合は、 initialValueを指定する必要があります。また、この値が返されます。
deleteAllListers()

コレクション インスタンスからすべてのcallbackリスナーを削除します。

deleteLister(コールバック)

コレクション インスタンスからリスナーcallbackを削除します。

パラメーター:
  • コールバック
    • タイプ: function
    • 以前にaddListenerメソッドを通じてリスナーとして追加されたコールバック関数。

の例外をスローします。
  • Error
    • callbackが関数でない場合。

スライス開始終了[T, ...]
次を参照してください。 Array.prototype.slice
パラメーター:
  • 始める 任意
    • タイプ: number
    • デフォルト: 0
    • 開始インデックス。 負の場合、開始インデックスはコレクションの末尾からカウントされます。

  • end 任意
    • タイプ: number
    • 終了インデックス。 終了インデックスまでのオブジェクト(終了インデックスを含まない)は戻り値に含まれます。 負の場合、終了インデックスはコレクションの末尾からカウントされます。 省略した場合、開始インデックスのすべてのオブジェクトが戻り値に含まれます。

開始インデックスから終了インデックスまでのオブジェクトを含む: を[T, ...] 返します (終了インデックスは含みません)。
スナップショット()Realm.Results<T>

コレクションのスナップショットを作成します。

元のコレクションに追加された値と削除された値は、プロパティの値が適用されたフィルターと一致するか一致しないように変更された場合も含め、このメソッドによって返される結果には反映されません。

これは ディープ スナップショットではあり ません 。このスナップショットに含まれる Realm オブジェクトは、変更が加えられるたびに更新を継続し、Realm から削除された場合は、それぞれのインデックスのnullに置き換えられます。

の例外をスローします。
  • Error
    • プリミティブ型のコレクションをスナップショットする場合。

ライブRealm.Results<T> アップデートを 行わない : を 返します 。
いくつかの(コールバック、このArgboolean
次を参照してください。 Array.prototype.sort
パラメーター:
  • コールバック
    • タイプ: function
    • コレクション内の各オブジェクトで実行する関数。 この関数がtrueを返す場合、このメソッドはtrueを返します。 この関数は 3 つの引数を取ります。

      • object - コレクション内で処理されている現在オブジェクト。
      • index - コレクション内で処理されているオブジェクトのインデックス。
      • collection - コレクション自体。
  • このArg 任意
    • タイプ: object
    • callbackが呼び出されるときのthisの値。

返します: boolean - trueがコレクション内のオブジェクトに対してtrue callback返す場合、それ以外の場合はfalse
authorized(descriptor, reverse)Realm.Results<T>

このコレクションのソートされたビューを表す新しい結果を返します。

Realm オブジェクトのコレクションは、それらのオブジェクトの 1 つ以上のプロパティ、またはそれらのオブジェクトにリンクされたオブジェクトのプロパティの 1 つ以上でソートできます。 1 つのプロパティで並べ替えるには、そのプロパティの名前をsorted()に渡します。その後、並べ替えを元に戻すかどうかを示すブール値を任意で渡します。 複数のプロパティの場合、ソートするプロパティをリストするソート記述子の配列を渡す必要があります。

他の型のコレクションは、値のプロパティではなく、値自体にソートされるため、プロパティ名やソート記述子を指定する必要はありません。

パラメーター:
  • descriptor 任意
    • タイプ: stringまたは[SortDescriptor, ...]
    • コレクションを並べ替えるプロパティ名。

  • 任意
    • タイプ: boolean
    • デフォルト: false
    • 昇順ではなく降順でソートします。 descriptorがソート記述子の配列である場合、指定されない可能性があります。

の例外をスローします。
  • Error
    • 指定されたプロパティが存在しない場合。

Realm.Results<T>で渡された引数に従ってソートされた : を 返します 。
例: :
// Sort wines by age
wines.sorted('age')
// Sort wines by price in descending order, then sort ties by age in
// ascending order
wines.sorted([['price', false], ['age']])
// Sort a list of numbers in ascending order
let sortedPrices = wine.pricesSeen.sort()
// Sort people by how expensive their favorite wine is
people.sort("favoriteWine.price")
合計プロパティnumber

コレクション内の または コレクション内のすべてのオブジェクト内の指定された プロパティの値の合計を計算します。コレクションが空の場合は 0 になります。

int、float、double プロパティでのみサポートされます。 null values are ignored entirely by this method.

パラメーター:
  • プロパティ 任意
    • タイプ: string
    • オブジェクトのコレクションの場合、 は の合計を取得します。

の例外をスローします。
  • Error
    • 名前を持つプロパティが存在しない場合、またはプロパティが数値でない場合。

返します: numberの合計。
Symbol.itator()Iterator<T>

これはvalues()メソッドと同じメソッドです。 この存在により、コレクションが反復可能になり、ES6 for-ofループ、 ...展開演算子などで使用できるようになります。

次を参照してください。 Symbol.itatorと イテラブルプロトコル
Iterator<T>コレクション内の各 Realm オブジェクトの : を 返します
:
for (let object of collection) {
  // do something with each object
}
values()Iterator<T>
次を参照してください。 Array.prototype.values
Iterator<T>コレクション内の各 Realm オブジェクトの : を 返します
イテレータ

これは ES6 イテレータです。

プロパティ:
  • 次へ
    • タイプ: function
    • 次の 2 つのプロパティを持つオブジェクトを返します。

      • done - イテレータがコレクション内の項目を反復処理している場合はtrue 、それ以外の場合はfalse
      • value - コレクション内の反復処理される次の項目、またはundefined doneが の場合はtrue
  • Symbol.itator
    • タイプ: function
    • このメソッドは単純にthisを返すため、このイテレータ自体を反復可能にします(つまり for-ofループで使用可能で、 ...展開演算子など)を使用する必要があります。

次を参照してください。 イテレータ プロトコル
SortDescriptor

並べ替え記述子は、ドットで区切られた 1 つ以上のプロパティ名を含む string、または2 つの項目を含む配列です: [propertyName, reverse]

タイプ:
string or Array