ReadableStream.from
。我在 JavaScript 中找到了 Node 实现,但它使用了很多内部原生节点函数。同样,Firefox 控制台中的 ReadableStream.from.toString()
表明它的实现也是本机函数。
有没有我可以临时填充的纯 JavaScript 实现?也许使用
ReadableStream
的构造函数?我想可以根据底层迭代器编写适当的拉取和取消回调。
GitHub 上有一个 ReadableStream polyfill (https://github.com/MattiasBuelens/web-streams-polyfill),其中包含
ReadableStream.from
:
const stream = ReadableStream.from(["Hello", "World!"]);
const reader = stream.getReader();
function process({ done, value }) {
if(done) {
console.log("(end of stream)");
return;
}
console.log(value);
reader.read().then(process);
};
reader.read().then(process);
<script src="https://unpkg.com/web-streams-polyfill/dist/polyfill.min.js"></script>