Readable class
- Extends
-
Stream
Oluşturucular
| Readable(Readable |
Özellikler
| closed | Yayımlandıktan |
| destroyed | Sonrasında |
| errored | Akış bir hata ile yok edildiyse hata döndürür. |
| readable |
|
| readable |
Yayın vermeden önce akışın yok edilip edilmediğini veya hata |
| readable |
Yayımlanıp |
| readable |
Belirli |
| readable |
Olay yayıldığında |
| readable |
Bu özellik, Üç durum bölümünde tanımlanan bir |
| readable |
Bu oluşturulduğunda |
| readable |
Bu özellik, kuyruktaki okunmaya hazır bayt (veya nesne) sayısını içerir. Değer |
| readable |
Belirli |
Yöntemler
| add |
|
| add |
|
| compose(Writable |
Bu yöntem ayrıca, kesildiğinde oluşturulan akışı yok eden bir Daha fazla bilgi için bkz. |
| destroy(Error) | Akışı yok edin. İstehsel olarak bir Çağrıldıktan sonra Uygulayıcılar bu yöntemi geçersiz kılmamalı, bunun yerine |
| drop(number, Abortable) | Bu yöntem, başlangıçtan itibaren ilk limit chunk'ları bırakılmış yeni bir akış döndürür. |
| emit(string | symbol, any[]) | |
| emit<E>(E, Readable |
|
| every((data: any, options?: Abortable) => boolean | Promise<boolean>, Pick<Readable |
Bu yöntem, |
| filter((data: any, options?: Abortable) => boolean | Promise<boolean>, Readable |
Bu yöntem, akışın filtrelenmesine olanak tanır. Akıştaki her parça için fn fonksiyonu çağrılır ve eğer doğruluk değeri dönerse, parça sonuç akışına iletilir.
Eğer fn fonksiyonu bir vaat döndürürse - o söz ed |
| find((data: any, options?: Abortable) => boolean | Promise<boolean>, Pick<Readable |
|
| find<T>((data: any, options?: Abortable) => data, Pick<Readable |
Bu yöntem, |
| flat |
Bu yöntem, verilen geri dönüş dönüşünü her bir akış parçasına uygulayarak ve ardından sonucu düzleştirerek yeni bir akış döndürür. Fn'den bir akış veya başka bir iterable veya asenkron yinelenebilir geri dönüş yapmak mümkündür ve sonuç akışları geri dönen akışa birleştirilir (düzleştirilir). |
| for |
Bu yöntem, bir akışı yinelemeye olanak tanır. Akıştaki her bölüm için fn fonksiyonu çağrılacaktır.
Eğer fn fonksiyonu bir vaat döndürürse - o söz ed Bu yöntem, Bu yöntem, olayı dinlemekten |
| from(Iterable<any> | Async |
Yinelemelerden Okunabilir Akışlar oluşturmak için bir yardımcı yöntem. |
| from |
Bir web |
| is |
Yayının okunduğunu ya da iptal edildiğini geri döner. |
| is |
Yöntem,
|
| iterator(Readable |
Bu yöntemle oluşturulan yinelemeci, kullanıcılara döngü , |
| listener |
|
| listener |
|
| listeners(string | symbol) | |
| listeners<E>(E) | |
| map((data: any, options?: Abortable) => any, Readable |
Bu yöntem, akış üzerinde haritalanmasına olanak tanır. fn fonksiyonu, akıştaki her bölüm için çağrılacaktır.
Eğer fn fonksiyonu bir vaat döndürürse - o söz |
| off(string | symbol, (args: any[]) => void) | |
| off<E>(E, (args: Readable |
|
| on(string | symbol, (args: any[]) => void) | |
| on<E>(E, (args: Readable |
|
| once(string | symbol, (args: any[]) => void) | |
| once<E>(E, (args: Readable |
|
| pause() | Bu yöntem,
|
| prepend |
|
| prepend |
|
| prepend |
|
| prepend |
|
| push(any, Buffer |
|
| raw |
|
| raw |
|
| read(number) | Yöntem, Isteğe Argüman Argüman Yöntem
Her çağrı Bu nedenle, bir dosyanın tüm içeriğini bir
Nesne modundaki bir akış, Yöntem Olay yayınlandıktan sonra |
| reduce<T>((previous: any, data: any, options?: Abortable) => T) | Bu yöntem, akışın her parçası üzerinde fn'yi sırayla çağırır ve önceki eleman üzerindeki hesaplamanın sonucunu ona iletmektedir. İndirgenimin nihai değeri için bir vaat verir.
Eğer başlangıç değeri sağlanmazsa, akışın ilk parçası başlangıç değeri olarak kullanılır.
Akış boşsa, vaat a ile kod Indirgen fonksiyonu, akışı eleman element yineleme yapar, bu da eşzamanlılık parametresi veya paralellik olmadığı anlamına gelir. Eşzamanlı bir redaksiyon yapmak için, asenkron fonksiyonu metod |
| reduce<T>((previous: T, data: any, options?: Abortable) => T, T, Abortable) | |
| remove |
|
| remove |
|
| remove |
|
| remove |
|
| resume() | Bu Bu
|
| set |
Yöntem, Varsayılan olarak, herhangi bir kodlama atanmaz ve akış verisi nesne olarak Akış,
|
| some((data: any, options?: Abortable) => boolean | Promise<boolean>, Pick<Readable |
Bu yöntem, |
| take(number, Abortable) | Bu yöntem, ilk limit parçalarına sahip yeni bir akış döndürür. |
| to |
Bu yöntem, bir akışın içeriğini kolayca elde etmeyi sağlar. Bu yöntem tüm akışı hafıza okuyduğundan, akışların faydalarını ortadan kaldırır. Akışları tüketmenin birincil yolu olarak değil, birlikte çalışabilirlik ve kolaylık için tasarlanmıştır. |
| to |
Bir |
| unpipe(Writable |
Bu yöntem Belirtilmemişse Eğer belirtilmişse
|
| unshift(any, Buffer |
Sinyal Yöntem,
Sık kullanan
Push'ın aksine, |
| wrap(Readable |
Node.js 0.10'dan önce, akışlar modül API'sinin Olay yayan Nadiren kullanılması
|
| [async |
Devralınan Yöntemler
| event |
Vericinin dinleyicileri kaydettiği olayları listeleyen bir dizi döndürür.
|
| get |
|
| pipe<T>(T, Pipe |
|
| set |
Varsayılan olarak, belirli bir olay için Çağrıların zincirlenebilmesi için |
| [capture |
Yöntem,
|
Oluşturucu Ayrıntıları
Readable(ReadableOptions<Readable>)
Özellik Ayrıntıları
closed
Yayımlandıktan true sonra 'close' .
closed: boolean
Özellik Değeri
boolean
destroyed
Sonrasında truereadable.destroy() çağrıldı.
destroyed: boolean
Özellik Değeri
boolean
errored
Akış bir hata ile yok edildiyse hata döndürür.
errored: null | Error
Özellik Değeri
null | Error
readable
true
Okuma çağrısı yapmak güvenli mi, yani akış yok edilmemiş, 'error' yayılmamış ya 'end'da .
readable: boolean
Özellik Değeri
boolean
readableAborted
Yayın vermeden önce akışın yok edilip edilmediğini veya hata 'end'yapıldığını döndürür.
readableAborted: boolean
Özellik Değeri
boolean
readableDidRead
Yayımlanıp 'data' yayılmış olmadığını geri getirir.
readableDidRead: boolean
Özellik Değeri
boolean
readableEncoding
Belirli Readable bir akının özelliği encoding için getter. Özellik, encodingsetEncoding yöntemiyle ayarlanabilir.
readableEncoding: null | BufferEncoding
Özellik Değeri
null | BufferEncoding
readableEnded
readableFlowing
Bu özellik, Üç durum bölümünde tanımlanan bir Readable akarsuyun mevcut durumunu yansıtır.
readableFlowing: null | boolean
Özellik Değeri
null | boolean
readableHighWaterMark
Bu oluşturulduğunda Readablegeçtiğin highWaterMark değerini döndürür.
readableHighWaterMark: number
Özellik Değeri
number
readableLength
Bu özellik, kuyruktaki okunmaya hazır bayt (veya nesne) sayısını içerir. Değer highWaterMark, .
readableLength: number
Özellik Değeri
number
readableObjectMode
Belirli Readable bir akının özelliği objectMode için getter.
readableObjectMode: boolean
Özellik Değeri
boolean
Yöntem Ayrıntıları
addListener(string | symbol, (args: any[]) => void)
function addListener(eventName: string | symbol, listener: (args: any[]) => void): Readable
Parametreler
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Döndürülenler
addListener<E>(E, (args: ReadableEventMap[E]) => void)
function addListener<E>(eventName: E, listener: (args: ReadableEventMap[E]) => void): Readable
Parametreler
- eventName
-
E
- listener
-
(args: ReadableEventMap[E]) => void
Döndürülenler
compose(WritableStream | WritableStream<any> | TransformStream<any, any> | (source: any) => void, Abortable)
import { Readable } from 'node:stream';
async function* splitToWords(source) {
for await (const chunk of source) {
const words = String(chunk).split(' ');
for (const word of words) {
yield word;
}
}
}
const wordsStream = Readable.from(['text passed through', 'composed stream']).compose(splitToWords);
const words = await wordsStream.toArray();
console.log(words); // prints ['text', 'passed', 'through', 'composed', 'stream']
readable.compose(s) ile eşdeğerdir stream.compose(readable, s).
Bu yöntem ayrıca, kesildiğinde oluşturulan akışı yok eden bir AbortSignal a'nın sağlanmasına da olanak tanır.
Daha fazla bilgi için bkz. stream.compose(...streams).
function compose(stream: WritableStream | WritableStream<any> | TransformStream<any, any> | (source: any) => void, options?: Abortable): Duplex
Parametreler
- stream
-
WritableStream | WritableStream<any> | TransformStream<any, any> | (source: any) => void
- options
-
Abortable
Döndürülenler
Duplex
bir akıntı ile streamoluşturulan bir akış.
destroy(Error)
Akışı yok edin. İstehsel olarak bir 'error' olay yayabilir ve bir 'close' olay yayabilir (eğer emitClose ayarlanmışsa false). Bu çağrıdan sonra, okunabilir akış tüm dahili kaynakları serbest bırakır ve sonraki çağrılar push() göz ardı edilir.
Çağrıldıktan sonra destroy() herhangi bir başka çağrı no-op olur ve başka hata dışında ' _destroy() olarak yayımlanabilir.'error'
Uygulayıcılar bu yöntemi geçersiz kılmamalı, bunun yerine readable._destroy().
function destroy(error?: Error): Readable
Parametreler
- error
-
Error
Hata ve olayda 'error' yük olarak iletilir
Döndürülenler
drop(number, Abortable)
Bu yöntem, başlangıçtan itibaren ilk limit chunk'ları bırakılmış yeni bir akış döndürür.
function drop(limit: number, options?: Abortable): Readable
Parametreler
- limit
-
number
okunabilir bölümden düşecek parça sayısı.
- options
-
Abortable
Döndürülenler
Baştan limitli bölümlerin bırakıldığı bir akış.
emit(string | symbol, any[])
function emit(eventName: string | symbol, args: any[]): boolean
Parametreler
- eventName
-
string | symbol
- args
-
any[]
Döndürülenler
boolean
emit<E>(E, ReadableEventMap[E])
function emit<E>(eventName: E, args: ReadableEventMap[E]): boolean
Parametreler
- eventName
-
E
- args
-
ReadableEventMap[E]
Döndürülenler
boolean
every((data: any, options?: Abortable) => boolean | Promise<boolean>, Pick<ReadableOperatorOptions, "signal" | "concurrency">)
Bu yöntem, Array.prototype.every akıştaki her parçada fn çağırarak beklenen tüm geri dönüş değerlerinin fn için doğruluk değeri olup olmadığını kontrol eder. Bir fn çağrısı bir chunk awaited geri dönüş değeri sahte olduğunda, akış yok edilir ve söz yerine getirilir false.
Eğer tüm fn çağrıları chunk'ta bir doğruluk değeri döndürürse, söz ile trueyerine getirilir.
function every(fn: (data: any, options?: Abortable) => boolean | Promise<boolean>, options?: Pick<ReadableOperatorOptions, "signal" | "concurrency">): Promise<boolean>
Parametreler
- fn
-
(data: any, options?: Abortable) => boolean | Promise<boolean>
akışın her parçasını çağıran bir fonksiyon. Asenkron olsun ya da olmasın.
- options
-
Pick<ReadableOperatorOptions, "signal" | "concurrency">
Döndürülenler
Promise<boolean>
Her bir parça için FN'nin doğruluk değeri verip vermediğini değerlendiren true bir vaat.
filter((data: any, options?: Abortable) => boolean | Promise<boolean>, ReadableOperatorOptions)
Bu yöntem, akışın filtrelenmesine olanak tanır. Akıştaki her parça için fn fonksiyonu çağrılır ve eğer doğruluk değeri dönerse, parça sonuç akışına iletilir.
Eğer fn fonksiyonu bir vaat döndürürse - o söz ed awaitolur.
function filter(fn: (data: any, options?: Abortable) => boolean | Promise<boolean>, options?: ReadableOperatorOptions): Readable
Parametreler
- fn
-
(data: any, options?: Abortable) => boolean | Promise<boolean>
akıştan parçaları filtreleyen bir fonksiyon. Asenkron olsun ya da olmasın.
- options
-
ReadableOperatorOptions
Döndürülenler
fn yüklemiyle filtrelenmiş bir akış.
find((data: any, options?: Abortable) => boolean | Promise<boolean>, Pick<ReadableOperatorOptions, "signal" | "concurrency">)
function find(fn: (data: any, options?: Abortable) => boolean | Promise<boolean>, options?: Pick<ReadableOperatorOptions, "signal" | "concurrency">): Promise<any>
Parametreler
- fn
-
(data: any, options?: Abortable) => boolean | Promise<boolean>
- options
-
Pick<ReadableOperatorOptions, "signal" | "concurrency">
Döndürülenler
Promise<any>
find<T>((data: any, options?: Abortable) => data, Pick<ReadableOperatorOptions, "signal" | "concurrency">)
Bu yöntem, Array.prototype.find akıştaki her chunk üzerinde fn çağırarak fn için doğruluk değeri olan bir chunk bulur.
Bir fn çağrısının beklenen geri dönüş değeri doğruluk olduğunda, akış yok edilir ve vaat, fn'nin doğruluk değeri döndürdüğü değerle yerine getirilir.
Eğer tüm fn çağrıları parça halte değer döndürürse, söz ile undefinedyerine getirilir.
function find<T>(fn: (data: any, options?: Abortable) => data, options?: Pick<ReadableOperatorOptions, "signal" | "concurrency">): Promise<undefined | T>
Parametreler
- fn
-
(data: any, options?: Abortable) => data
akışın her parçasını çağıran bir fonksiyon. Asenkron olsun ya da olmasın.
- options
-
Pick<ReadableOperatorOptions, "signal" | "concurrency">
Döndürülenler
Promise<undefined | T>
Fn'nin doğruluk değeriyle değerlendirdiği ya undefined da herhangi bir element bulunmadığı ilk parçaya değer verilmesi vaat edilirdi.
flatMap((data: any, options?: Abortable) => any, Pick<ReadableOperatorOptions, "signal" | "concurrency">)
Bu yöntem, verilen geri dönüş dönüşünü her bir akış parçasına uygulayarak ve ardından sonucu düzleştirerek yeni bir akış döndürür.
Fn'den bir akış veya başka bir iterable veya asenkron yinelenebilir geri dönüş yapmak mümkündür ve sonuç akışları geri dönen akışa birleştirilir (düzleştirilir).
function flatMap(fn: (data: any, options?: Abortable) => any, options?: Pick<ReadableOperatorOptions, "signal" | "concurrency">): Readable
Parametreler
- fn
-
(data: any, options?: Abortable) => any
akıştaki her bölümü haritalayan bir fonksiyon. Belki de asenkron. Bir akarsu veya jeneratör olabilir.
- options
-
Pick<ReadableOperatorOptions, "signal" | "concurrency">
Döndürülenler
fn fonksiyonuyla düz eşlenmiş bir akış.
forEach((data: any, options?: Abortable) => void | Promise<void>, Pick<ReadableOperatorOptions, "signal" | "concurrency">)
Bu yöntem, bir akışı yinelemeye olanak tanır. Akıştaki her bölüm için fn fonksiyonu çağrılacaktır.
Eğer fn fonksiyonu bir vaat döndürürse - o söz ed awaitolur.
Bu yöntem, for await...of döngülerden farklıdır; isteğe bağlı olarak parçaları eşzamanlı olarak işleyebilir.
Ayrıca, bir forEach yineleme yalnızca bir signal seçeneği geçirip ilgili AbortController iptal edilerek durdurulabilir, for await...of ancak veya returnile durdurulabilirbreak.
Her iki durumda da akış yok olacak.
Bu yöntem, olayı dinlemekten 'data' farklıdır; olayı readable temel makinede kullanır ve eşzamanlı fn çağrılarının sayısını sınırlayabilir.
function forEach(fn: (data: any, options?: Abortable) => void | Promise<void>, options?: Pick<ReadableOperatorOptions, "signal" | "concurrency">): Promise<void>
Parametreler
- fn
-
(data: any, options?: Abortable) => void | Promise<void>
akışın her parçasını çağıran bir fonksiyon. Asenkron olsun ya da olmasın.
- options
-
Pick<ReadableOperatorOptions, "signal" | "concurrency">
Döndürülenler
Promise<void>
yayın bittiğinde vereceği bir söz.
from(Iterable<any> | AsyncIterable<any>, ReadableOptions<Readable>)
Yinelemelerden Okunabilir Akışlar oluşturmak için bir yardımcı yöntem.
static function from(iterable: Iterable<any> | AsyncIterable<any>, options?: ReadableOptions<Readable>): Readable
Parametreler
- iterable
-
Iterable<any> | AsyncIterable<any>
Nesne, Symbol.iterator veya Symbol.asyncIterator tekrarlanabilir protokolü uygulayan bir sistem. Null değer geçirilirse 'hata' olayı yayılır.
- options
-
ReadableOptions<Readable>
Seçenekler sunuldu.new stream.Readable([options]) Varsayılan olarak, Readable.from() bu açıkça reddedilmedikçe options.objectModefalse, olarak ayarlanırtrue.options.objectMode
Döndürülenler
fromWeb(ReadableStream<any>, Pick<ReadableOptions<Readable>, "encoding" | "highWaterMark" | "objectMode" | "signal">)
Bir web ReadableStreamüzerinden bir Readable a'yı oluşturmak için bir yardımcı yöntem.
static function fromWeb(readableStream: ReadableStream<any>, options?: Pick<ReadableOptions<Readable>, "encoding" | "highWaterMark" | "objectMode" | "signal">): Readable
Parametreler
- readableStream
-
ReadableStream<any>
- options
-
Pick<ReadableOptions<Readable>, "encoding" | "highWaterMark" | "objectMode" | "signal">
Döndürülenler
isDisturbed(ReadableStream<any> | ReadableStream)
Yayının okunduğunu ya da iptal edildiğini geri döner.
static function isDisturbed(stream: ReadableStream<any> | ReadableStream): boolean
Parametreler
- stream
-
ReadableStream<any> | ReadableStream
Döndürülenler
boolean
isPaused()
Yöntem, readable.isPaused() ' Readablenin mevcut çalışma durumunu döndürür.
Bu, öncelikle yöntemin readable.pipe() altında duran mekanizma tarafından kullanılır.
Çoğu tipik durumda, bu yöntemi doğrudan kullanmaya gerek kalmaz.
const readable = new stream.Readable();
readable.isPaused(); // === false
readable.pause();
readable.isPaused(); // === true
readable.resume();
readable.isPaused(); // === false
function isPaused(): boolean
Döndürülenler
boolean
iterator(ReadableIteratorOptions)
Bu yöntemle oluşturulan yinelemeci, kullanıcılara döngü , break, veya throw, ile çıkarsa returnakışın yok for await...of edilmesini iptal etme seçeneği sunar; ya da yineleme sırasında akış hata çıkarırsa yineleyicinin akışı yok etmesi gerekirse seçeneği vardır.
function iterator(options?: ReadableIteratorOptions): AsyncIterator<any, undefined, any>
Parametreler
- options
-
ReadableIteratorOptions
Döndürülenler
AsyncIterator<any, undefined, any>
listenerCount(string | symbol, (args: any[]) => void)
function listenerCount(eventName: string | symbol, listener?: (args: any[]) => void): number
Parametreler
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Döndürülenler
number
listenerCount<E>(E, (args: ReadableEventMap[E]) => void)
function listenerCount<E>(eventName: E, listener?: (args: ReadableEventMap[E]) => void): number
Parametreler
- eventName
-
E
- listener
-
(args: ReadableEventMap[E]) => void
Döndürülenler
number
listeners(string | symbol)
function listeners(eventName: string | symbol): (args: any[]) => void[]
Parametreler
- eventName
-
string | symbol
Döndürülenler
(args: any[]) => void[]
listeners<E>(E)
function listeners<E>(eventName: E): (args: ReadableEventMap[E]) => void[]
Parametreler
- eventName
-
E
Döndürülenler
(args: ReadableEventMap[E]) => void[]
map((data: any, options?: Abortable) => any, ReadableOperatorOptions)
Bu yöntem, akış üzerinde haritalanmasına olanak tanır. fn fonksiyonu, akıştaki her bölüm için çağrılacaktır.
Eğer fn fonksiyonu bir vaat döndürürse - o söz awaitsonuç akışına iletmeden önce ed olur.
function map(fn: (data: any, options?: Abortable) => any, options?: ReadableOperatorOptions): Readable
Parametreler
- fn
-
(data: any, options?: Abortable) => any
akıştaki her bölümü haritalayan bir fonksiyon. Asenkron olsun ya da olmasın.
- options
-
ReadableOperatorOptions
Döndürülenler
fn fonksiyonuyla eşlenmiş bir akış.
off(string | symbol, (args: any[]) => void)
function off(eventName: string | symbol, listener: (args: any[]) => void): Readable
Parametreler
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Döndürülenler
off<E>(E, (args: ReadableEventMap[E]) => void)
function off<E>(eventName: E, listener: (args: ReadableEventMap[E]) => void): Readable
Parametreler
- eventName
-
E
- listener
-
(args: ReadableEventMap[E]) => void
Döndürülenler
on(string | symbol, (args: any[]) => void)
function on(eventName: string | symbol, listener: (args: any[]) => void): Readable
Parametreler
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Döndürülenler
on<E>(E, (args: ReadableEventMap[E]) => void)
function on<E>(eventName: E, listener: (args: ReadableEventMap[E]) => void): Readable
Parametreler
- eventName
-
E
- listener
-
(args: ReadableEventMap[E]) => void
Döndürülenler
once(string | symbol, (args: any[]) => void)
function once(eventName: string | symbol, listener: (args: any[]) => void): Readable
Parametreler
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Döndürülenler
once<E>(E, (args: ReadableEventMap[E]) => void)
function once<E>(eventName: E, listener: (args: ReadableEventMap[E]) => void): Readable
Parametreler
- eventName
-
E
- listener
-
(args: ReadableEventMap[E]) => void
Döndürülenler
pause()
Bu yöntem, readable.pause() akış modundaki bir akının olay yaymasını 'data' durdurmasına ve akış modundan çıkmasına neden olur. Mevcut olan tüm veriler dahili buffer'da kalacaktır.
const readable = getReadableStreamSomehow();
readable.on('data', (chunk) => {
console.log(`Received ${chunk.length} bytes of data.`);
readable.pause();
console.log('There will be no additional data for 1 second.');
setTimeout(() => {
console.log('Now data will start flowing again.');
readable.resume();
}, 1000);
});
readable.pause() Yöntem, bir 'readable' olay dinleyicisi varsa hiçbir etkisi olmaz.
function pause(): Readable
Döndürülenler
prependListener(string | symbol, (args: any[]) => void)
function prependListener(eventName: string | symbol, listener: (args: any[]) => void): Readable
Parametreler
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Döndürülenler
prependListener<E>(E, (args: ReadableEventMap[E]) => void)
function prependListener<E>(eventName: E, listener: (args: ReadableEventMap[E]) => void): Readable
Parametreler
- eventName
-
E
- listener
-
(args: ReadableEventMap[E]) => void
Döndürülenler
prependOnceListener(string | symbol, (args: any[]) => void)
function prependOnceListener(eventName: string | symbol, listener: (args: any[]) => void): Readable
Parametreler
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Döndürülenler
prependOnceListener<E>(E, (args: ReadableEventMap[E]) => void)
function prependOnceListener<E>(eventName: E, listener: (args: ReadableEventMap[E]) => void): Readable
Parametreler
- eventName
-
E
- listener
-
(args: ReadableEventMap[E]) => void
Döndürülenler
push(any, BufferEncoding)
function push(chunk: any, encoding?: BufferEncoding): boolean
Parametreler
- chunk
-
any
- encoding
-
BufferEncoding
Döndürülenler
boolean
rawListeners(string | symbol)
function rawListeners(eventName: string | symbol): (args: any[]) => void[]
Parametreler
- eventName
-
string | symbol
Döndürülenler
(args: any[]) => void[]
rawListeners<E>(E)
function rawListeners<E>(eventName: E): (args: ReadableEventMap[E]) => void[]
Parametreler
- eventName
-
E
Döndürülenler
(args: ReadableEventMap[E]) => void[]
read(number)
Yöntem, readable.read() verileri dahili tampondan okur ve geri gönderir. Okunacak veri yoksa, null geri gönderilir. Varsayılan olarak, veri bir nesne olarak Buffer döner, ancak yöntem kullanılarak readable.setEncoding() kodlama belirtilmedikçe veya akış nesne modunda çalışıyorsa.
Isteğe size bağlı argüman, okunması gereken belirli bir bayt sayısını belirtir. Baytlar size okunamazsa, null akış bitmedikçe geri gönderilir; bu durumda iç tamponda kalan tüm veriler geri döner.
Argüman size belirtilmemişse, dahili tampondaki tüm veriler geri gönderilir.
Argüman size 1 GiB'den az veya eşit olmalıdır.
Yöntem readable.read() yalnızca duraklatılmış modda çalışan akışlarda çağrılmalıdır Readable . Akış modunda, readable.read() iç tampon tamamen boşalana kadar otomatik olarak çağrılır.
const readable = getReadableStreamSomehow();
// 'readable' may be triggered multiple times as data is buffered in
readable.on('readable', () => {
let chunk;
console.log('Stream is readable (new data received in buffer)');
// Use a loop to make sure we read all currently available data
while (null !== (chunk = readable.read())) {
console.log(`Read ${chunk.length} bytes of data...`);
}
});
// 'end' will be triggered once when there is no more data available
readable.on('end', () => {
console.log('Reached end of stream.');
});
Her çağrı readable.read() bir veri parçası döndürür, ya nullda . Parçalar birleşmemiştir. Şu anda tamponda bulunan tüm verileri tüketmek için bir while döngü gereklidir. Büyük bir dosya .read() okunurken, şimdiye kadar tüm tamponlu içeriği tüketmiş olabilir null, ancak henüz tamponlanmamış daha fazla veri var. Bu durumda, tamponda daha fazla veri olduğunda yeni 'readable' bir olay yayımlanır. Son olarak, daha fazla veri kalmadığında etkinlik 'end' yayınlanacak.
Bu nedenle, bir dosyanın tüm içeriğini bir readable'dan okumak için, birden fazla 'readable' olay boyunca parçaların toplanması gerekir:
const chunks = [];
readable.on('readable', () => {
let chunk;
while (null !== (chunk = readable.read())) {
chunks.push(chunk);
}
});
readable.on('end', () => {
const content = chunks.join('');
});
Nesne modundaki bir akış, Readable argümanın size değeri ne olursa olsun her zaman çağrıdan readable.read(size)tek bir öğe döndürür.
Yöntem readable.read() bir veri parçası döndürürse, bir 'data' olay da yayımlanır.
Olay yayınlandıktan sonra 'end'okunan çağrı geri dönecektirnull. Çalışma zamanı hatası ortaya çıkmaz.
function read(size?: number): any
Parametreler
- size
-
number
Ne kadar veri okunacağını belirtmek için isteğe bağlı argüman.
Döndürülenler
any
reduce<T>((previous: any, data: any, options?: Abortable) => T)
Bu yöntem, akışın her parçası üzerinde fn'yi sırayla çağırır ve önceki eleman üzerindeki hesaplamanın sonucunu ona iletmektedir. İndirgenimin nihai değeri için bir vaat verir.
Eğer başlangıç değeri sağlanmazsa, akışın ilk parçası başlangıç değeri olarak kullanılır.
Akış boşsa, vaat a ile kod ERR_INVALID_ARGS özelliğiyle reddedilirTypeError.
Indirgen fonksiyonu, akışı eleman element yineleme yapar, bu da eşzamanlılık parametresi veya paralellik olmadığı anlamına gelir. Eşzamanlı bir redaksiyon yapmak için, asenkron fonksiyonu metod readable.map olarak çıkarabilirsiniz.
function reduce<T>(fn: (previous: any, data: any, options?: Abortable) => T): Promise<T>
Parametreler
- fn
-
(previous: any, data: any, options?: Abortable) => T
akıştaki her bölümü çağıran bir indirgen fonksiyonu. Asenkron olsun ya da olmasın.
Döndürülenler
Promise<T>
indirgenin nihai değeri için bir vaat.
reduce<T>((previous: T, data: any, options?: Abortable) => T, T, Abortable)
function reduce<T>(fn: (previous: T, data: any, options?: Abortable) => T, initial: T, options?: Abortable): Promise<T>
Parametreler
- fn
-
(previous: T, data: any, options?: Abortable) => T
- initial
-
T
- options
-
Abortable
Döndürülenler
Promise<T>
removeAllListeners(string | symbol)
function removeAllListeners(eventName?: string | symbol): Readable
Parametreler
- eventName
-
string | symbol
Döndürülenler
removeAllListeners<E>(E)
function removeAllListeners<E>(eventName?: E): Readable
Parametreler
- eventName
-
E
Döndürülenler
removeListener(string | symbol, (args: any[]) => void)
function removeListener(eventName: string | symbol, listener: (args: any[]) => void): Readable
Parametreler
- eventName
-
string | symbol
- listener
-
(args: any[]) => void
Döndürülenler
removeListener<E>(E, (args: ReadableEventMap[E]) => void)
function removeListener<E>(eventName: E, listener: (args: ReadableEventMap[E]) => void): Readable
Parametreler
- eventName
-
E
- listener
-
(args: ReadableEventMap[E]) => void
Döndürülenler
resume()
Bu readable.resume() yöntem, açıkça durakmış Readable bir akışın yayımlanan olayları devam 'data' ettirmesine ve akışın akış moduna geçmesine neden olur.
Bu readable.resume() yöntem, bir akıştan gelen verileri tam olarak tüketmek için kullanılabilir, ancak bu verileri gerçekten işlemeden kullanılabilir:
getReadableStreamSomehow()
.resume()
.on('end', () => {
console.log('Reached the end, but did not read anything.');
});
readable.resume() Yöntem, bir 'readable' olay dinleyicisi varsa hiçbir etkisi olmaz.
function resume(): Readable
Döndürülenler
setEncoding(BufferEncoding)
Yöntem, readable.setEncoding() akıştan okunan Readable veri için karakter kodlamasını belirler.
Varsayılan olarak, herhangi bir kodlama atanmaz ve akış verisi nesne olarak Buffer geri döner. Bir kodlama ayarlanması, akış verisinin nesne olarak değil Buffer , belirtilen kodlamanın dizileri olarak geri dönmesine neden olur. Örneğin, çağırma readable.setEncoding('utf8') çıktı verisi UTF-8 veri olarak yorumlanır ve dizi olarak iletilir. Çağırma readable.setEncoding('hex') işlemi verinin onaltılık dizi formatında kodlanmasına neden olur.
Akış, Readable akış üzerinden iletilen çok baytlı karakterleri düzgün şekilde işliyor; aksi takdirde akıştan nesne olarak çekildiğinde yanlış çözülecek Buffer .
const readable = getReadableStreamSomehow();
readable.setEncoding('utf8');
readable.on('data', (chunk) => {
assert.equal(typeof chunk, 'string');
console.log('Got %d characters of string data:', chunk.length);
});
function setEncoding(encoding: BufferEncoding): Readable
Parametreler
- encoding
-
BufferEncoding
Kullanılacak kodlama.
Döndürülenler
some((data: any, options?: Abortable) => boolean | Promise<boolean>, Pick<ReadableOperatorOptions, "signal" | "concurrency">)
Bu yöntem, Array.prototype.some beklenen geri dönüş değeri true (veya herhangi bir doğruluk değeri) olana kadar akıştaki her parçada fn çağırır. Bir fn çağrısı bir chunk awaited geri dönüş değeri doğruluk olduğunda, akış yok edilir ve söz yerine getirilir true.
Eğer fn çağrılarından hiçbiri parçalardaki gerçek değeri döndürmezse, söz ile falseyerine getirilir.
function some(fn: (data: any, options?: Abortable) => boolean | Promise<boolean>, options?: Pick<ReadableOperatorOptions, "signal" | "concurrency">): Promise<boolean>
Parametreler
- fn
-
(data: any, options?: Abortable) => boolean | Promise<boolean>
akışın her parçasını çağıran bir fonksiyon. Asenkron olsun ya da olmasın.
- options
-
Pick<ReadableOperatorOptions, "signal" | "concurrency">
Döndürülenler
Promise<boolean>
En az bir parça için FN'nin doğruluk değeri döndürüp vermediğini değerlendiren true bir vaat.
take(number, Abortable)
Bu yöntem, ilk limit parçalarına sahip yeni bir akış döndürür.
function take(limit: number, options?: Abortable): Readable
Parametreler
- limit
-
number
okunabilir alandan alınacak parça sayısı.
- options
-
Abortable
Döndürülenler
Limitli parçalar alınan bir akış.
toArray(Abortable)
Bu yöntem, bir akışın içeriğini kolayca elde etmeyi sağlar.
Bu yöntem tüm akışı hafıza okuyduğundan, akışların faydalarını ortadan kaldırır. Akışları tüketmenin birincil yolu olarak değil, birlikte çalışabilirlik ve kolaylık için tasarlanmıştır.
function toArray(options?: Abortable): Promise<any[]>
Parametreler
- options
-
Abortable
Döndürülenler
Promise<any[]>
akışın içeriğiyle bir dizi içeren bir vaat.
toWeb(ReadableStream, ReadableToWebOptions)
Bir Readable'den bir web ReadableStream oluşturmak için bir yardımcı yöntem.
static function toWeb(streamReadable: ReadableStream, options?: ReadableToWebOptions): ReadableStream<any>
Parametreler
- streamReadable
-
ReadableStream
- options
-
ReadableToWebOptions
Döndürülenler
ReadableStream<any>
unpipe(WritableStream)
Bu yöntemreadable.unpipe(), boru yöntemiyle önceden bağlı olan bir Writable dereyi koparır.
Belirtilmemişse destination , tüm borular ayrılır.
Eğer belirtilmişse destination ama bunun için bir boru kurulmamışsa, yöntem hiçbir işe yaramaz.
import fs from 'node:fs';
const readable = getReadableStreamSomehow();
const writable = fs.createWriteStream('file.txt');
// All the data from readable goes into 'file.txt',
// but only for the first second.
readable.pipe(writable);
setTimeout(() => {
console.log('Stop writing to file.txt.');
readable.unpipe(writable);
console.log('Manually close the file stream.');
writable.end();
}, 1000);
function unpipe(destination?: WritableStream): Readable
Parametreler
- destination
-
WritableStream
Isteğe bağlı özel bir akış açılır
Döndürülenler
unshift(any, BufferEncoding)
Sinyal chunknull olarak aktarmak akışın sonunu (EOF) gösterir ve readable.push(null)aynı şekilde davranır, bundan sonra daha fazla veri yazılamaz. EOF sinyali tamponun sonuna yerleştirilir ve tamponlu veriler yine de silinir.
Yöntem, readable.unshift() bir veri parçasını dahili tampona geri gönderir. Bu, bir akışın kaynak üzerinden iyimserce çektiği bir miktardaki veriyi "tüketmekten kurtarması" gereken kod tarafından tüketildiği durumlarda faydalıdır; böylece veri başka bir tarafa iletilabiliyor.
stream.unshift(chunk) Olay yayımlandıktan sonra 'end' yöntem çağrılamaz veya çalışma zamanı hatası atılır.
Sık kullanan stream.unshift() geliştiriciler, bunun yerine akış Transform kullanımına geçmeyi düşünmeli. Daha fazla bilgi için bölüme API for stream implementers bakınız.
// Pull off a header delimited by \n\n.
// Use unshift() if we get too much.
// Call the callback with (error, header, stream).
import { StringDecoder } from 'node:string_decoder';
function parseHeader(stream, callback) {
stream.on('error', callback);
stream.on('readable', onReadable);
const decoder = new StringDecoder('utf8');
let header = '';
function onReadable() {
let chunk;
while (null !== (chunk = stream.read())) {
const str = decoder.write(chunk);
if (str.includes('\n\n')) {
// Found the header boundary.
const split = str.split(/\n\n/);
header += split.shift();
const remaining = split.join('\n\n');
const buf = Buffer.from(remaining, 'utf8');
stream.removeListener('error', callback);
// Remove the 'readable' listener before unshifting.
stream.removeListener('readable', onReadable);
if (buf.length)
stream.unshift(buf);
// Now the body of the message can be read from the stream.
callback(null, header, stream);
return;
}
// Still reading the header.
header += str;
}
}
}
Push'ın aksine, stream.unshift(chunk) akışın iç okuma durumunu sıfırlayarak okuma sürecini sonlandırmaz.
Bu, okuma sırasında çağrıldığında (örneğin özel bir akışta _read uygulamasından çağrıldığında) beklenmedik sonuçlara readable.unshift() yol açabilir. Çağrıyı readable.unshift() hemen itmek okuma durumunu uygun şekilde sıfırlar, ancak okuma işlemi sırasında aramaktan readable.unshift() kaçınmak en iyisidir.
function unshift(chunk: any, encoding?: BufferEncoding)
Parametreler
- chunk
-
any
Okuma kuyruğuna kaydetmek için veri parçası. Nesne modunda çalışmayan akışlar için, chunk {string}, {Buffer}, {TypedArray}, {DataView} veya null. Nesne modu akışları için, chunk herhangi bir JavaScript değeri olabilir.
- encoding
-
BufferEncoding
Dizi parçalarının kodlanması. Geçerli Buffer bir kodlama olmalıdır, örneğin 'utf8' veya 'ascii'.
wrap(ReadableStream)
Node.js 0.10'dan önce, akışlar modül API'sinin node:stream tamamını şu anda tanımlandığı şekilde uygulamamıştı. (Daha fazla bilgi için bakınız.)Compatibility
Olay yayan 'data' ve yalnızca danışma amaçlı duraklatma yöntemi olan eski bir Node.js kütüphanesi kullanıldığında, bu readable.wrap() yöntem eski akışı veri kaynağı olarak kullanan bir Readable akış oluşturmak için kullanılabilir.
Nadiren kullanılması readable.wrap() gerekebilir ancak yöntem, eski Node.js uygulamaları ve kütüphanelerle etkileşim için kolaylık sağlamak amacıyla sağlanmıştır.
import { OldReader } from './old-api-module.js';
import { Readable } from 'node:stream';
const oreader = new OldReader();
const myReader = new Readable().wrap(oreader);
myReader.on('readable', () => {
myReader.read(); // etc.
});
function wrap(stream: ReadableStream): Readable
Parametreler
- stream
-
ReadableStream
"Eski tarz" okunabilir bir akış
Döndürülenler
[asyncIterator]()
function [asyncIterator](): AsyncIterator<any, undefined, any>
Döndürülenler
AsyncIterator<any, undefined, any>
AsyncIterator Akışı tamamen tüketmek.
Devralınan Yöntemin Ayrıntıları
eventNames()
Vericinin dinleyicileri kaydettiği olayları listeleyen bir dizi döndürür.
import { EventEmitter } from 'node:events';
const myEE = new EventEmitter();
myEE.on('foo', () => {});
myEE.on('bar', () => {});
const sym = Symbol('symbol');
myEE.on(sym, () => {});
console.log(myEE.eventNames());
// Prints: [ 'foo', 'bar', Symbol(symbol) ]
function eventNames(): (string | symbol)[]
Döndürülenler
(string | symbol)[]
Miras Olarak Stream.eventNames
getMaxListeners()
EventEmitter veya varsayılan olarak emitter.setMaxListeners(n)olarak ayarlanan events.defaultMaxListeners için geçerli en yüksek dinleyici değerini döndürür.
function getMaxListeners(): number
Döndürülenler
number
Miras Olarak Stream.getMaxListeners
pipe<T>(T, PipeOptions)
function pipe<T>(destination: T, options?: PipeOptions): T
Parametreler
- destination
-
T
- options
-
PipeOptions
Döndürülenler
T
Miras Olarak Stream.pipe
setMaxListeners(number)
Varsayılan olarak, belirli bir olay için EventEmitter'den fazla dinleyici eklenirse 10bir uyarı yazdırır. Bu, bellek sızıntılarını bulmaya yardımcı olan kullanışlı bir varsayılan değerdir.
emitter.setMaxListeners() yöntemi, sınırın bu belirli EventEmitter örneği için değiştirilmesini sağlar. Değer, sınırsız sayıda dinleyiciyi göstermek için Infinity (veya 0) olarak ayarlanabilir.
Çağrıların zincirlenebilmesi için EventEmitterbir başvuru döndürür.
function setMaxListeners(n: number): Readable
Parametreler
- n
-
number
Döndürülenler
Miras Olarak Stream.setMaxListeners
[captureRejectionSymbol](Error, string | symbol, any[])
Yöntem, Symbol.for('nodejs.rejection') bir olay yayıldığında söz reddedilmesi durumunda çağrılır ve captureRejections yayıcıda etkinleştirilir.
events.captureRejectionSymbol
Symbol.for('nodejs.rejection')Yerine kullanılmak mümkündür.
import { EventEmitter, captureRejectionSymbol } from 'node:events';
class MyClass extends EventEmitter {
constructor() {
super({ captureRejections: true });
}
[captureRejectionSymbol](err, event, ...args) {
console.log('rejection happened for', event, 'with', err, ...args);
this.destroy(err);
}
destroy(err) {
// Tear the resource down here.
}
}
function [captureRejectionSymbol](error: Error, event: string | symbol, args: any[])
Parametreler
- error
-
Error
- event
-
string | symbol
- args
-
any[]
Miras Olarak Stream.__@captureRejectionSymbol@175