Min

從來源 Observable 發射具有最小值的項目

Min 運算子作用於發射數值(或可評估為數值的項目)的 Observable,並發射一個項目:具有最小值的項目。

另請參閱

特定語言資訊

待定

待定

在 RxGroovy 中,此運算子不在 ReactiveX 核心中,而是獨立的 rxjava-math 模組的一部分。

min

RxGroovy 實作了一個 min 運算子。它接受一個可選的比較器,它將使用該比較器而不是其預設值來比較兩個項目的值。如果有多個項目具有相同的最小值,min 將發射來源 Observable 發射的最後一個此類項目。

minBy

minBy 運算子與 min 類似,但它不是發射具有最小值的項目,而是發射具有最小的項目,其中該鍵是基於您提供給 minBy 的函數產生的。

在 RxJava 中,此運算子不在 ReactiveX 核心中,而是獨立的 rxjava-math 模組的一部分。

min

RxJava 實作了一個 min 運算子。它接受一個可選的比較器,它將使用該比較器而不是其預設值來比較兩個項目的值。如果有多個項目具有相同的最小值,min 將發射來源 Observable 發射的最後一個此類項目。

minBy

minBy 運算子與 min 類似,但它不是發射具有最小值的項目,而是發射具有最小的項目,其中該鍵是基於您提供給 minBy 的函數產生的。

min

RxJS 實作了 min 運算子。它接受一個可選的比較函數,它將使用該函數而不是其預設值來比較兩個項目的值。

範例程式碼

var source = Rx.Observable.fromArray([1,3,5,7,9,2,4,6,8]).min();

var subscription = source.subscribe(
  function (x) { console.log('Next: ' + x); },
  function (err) { console.log('Error: ' + err); },
  function () { console.log('Completed'); } );
Next: 1
Completed
minBy

minBy 運算子與 min 類似,但它不是發射具有最小值的項目,而是發射具有最小的項目,其中該鍵是基於您提供給 minBy 的函數產生的。minBy 還接受一個可選的第二個參數:一個比較函數,它將使用該函數而不是其預設值來比較兩個項目的鍵。

minBy 發射一個列表。如果有多個項目具有最小的鍵值,則每個此類項目都將在列表中表示。

範例程式碼

var source = Rx.Observable.fromArray([1,3,5,7,9,2,4,6,8,1])
               .minBy( function (x) { return x; } );

var subscription = source.subscribe(
  function (x) { console.log('Next: ' + x); },
  function (err) { console.log('Error: ' + err); },
  function () { console.log('Completed'); } );
Next: 1,1
Completed

minminBy 在以下發行版中找到

  • rx.all.js
  • rx.all.compat.js
  • rx.aggregates.js

它們需要以下其中之一

  • rx.js
  • rx.compat.js
  • rx.lite.js
  • rx.lite.compat.js

RxPHP 將此運算子實作為 min

根據指定的比較器,傳回 observable 序列中的最小值。

範例程式碼

//from https://github.com/ReactiveX/RxPHP/blob/master/demo/min/min.php

/* Without comparer */
$source = \Rx\Observable::fromArray([1, 3, 5, 7, 9, 2, 4, 6, 8])
    ->min();

$subscription = $source->subscribe($createStdoutObserver());

   
Next value: 1
Complete!
    
//from https://github.com/ReactiveX/RxPHP/blob/master/demo/min/min-with-comparer.php

/* With a comparer */
$comparer = function ($x, $y) {
    if ($x > $y) {
        return 1;
    } elseif ($x < $y) {
        return -1;
    }
    return 0;
};

$source = \Rx\Observable::fromArray([1, 3, 5, 7, 9, 2, 4, 6, 8])
    ->min($comparer);

$subscription = $source->subscribe($createStdoutObserver());

   
Next value: 1
Complete!
    

待定