當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Node.js stream.Readable.some(fn[, options])用法及代碼示例


readable.some(fn[, options])

添加於:v17.5.0
Stability: 1 - 實驗性

參數

此方法類似於Array.prototype.some,並在流中的每個塊上調用fn,直到等待的返回值為true(或任何真值)。一旦對塊等待返回值的 fn 調用是真實的,流就會被銷毀,並且用 true 來履行承諾。如果對塊的 fn 調用都沒有返回真值,則使用 false 實現承諾。

import { Readable } from 'node:stream';
import { stat } from 'node:fs/promises';

// With a synchronous predicate.
await Readable.from([1, 2, 3, 4]).some((x) => x > 2); // true
await Readable.from([1, 2, 3, 4]).some((x) => x < 0); // false

// With an asynchronous predicate, making at most 2 file checks at a time.
const anyBigFile = await Readable.from([
  'file1',
  'file2',
  'file3',
]).some(async (fileName) => {
  const stats = await stat(fileName);
  return stat.size > 1024 * 1024;
}, { concurrency: 2 });
console.log(anyBigFile); // `true` if any file in the list is bigger than 1MB
console.log('done'); // Stream has finished

相關用法


注:本文由純淨天空篩選整理自nodejs.org大神的英文原創作品 stream.Readable.some(fn[, options])。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。