ストリームは書き込み可能

JavaScriptJavaScriptBeginner
今すぐ練習

This tutorial is from open-source community. Access the source code

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、JavaScript で与えられた引数が書き込み可能なストリームかどうかを確認する方法を探ります。値が null と異なるかどうか、型 functionpipe プロパティを持っているかどうか、そしてそれがそれぞれ型 functionobject_write_writableState プロパティも持っているかどうかを確認する関数を使用します。この実験を通じて、JavaScript でのストリームの扱い方をより深く理解することができます。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/BasicConceptsGroup -.-> javascript/obj_manip("Object Manipulation") subgraph Lab Skills javascript/variables -.-> lab-28450{{"ストリームは書き込み可能"}} javascript/data_types -.-> lab-28450{{"ストリームは書き込み可能"}} javascript/arith_ops -.-> lab-28450{{"ストリームは書き込み可能"}} javascript/comp_ops -.-> lab-28450{{"ストリームは書き込み可能"}} javascript/obj_manip -.-> lab-28450{{"ストリームは書き込み可能"}} end

ストリームが書き込み可能かどうかを確認する

ストリームが書き込み可能かどうかを確認するには、ターミナル/SSH を開き、コーディングの練習を始めるために node と入力します。次に、以下の手順に従います。

  1. 与えられた引数が null でないことを確認します。
  2. typeof を使用して、値が object であり、pipe プロパティが function であることを確認します。
  3. さらに、_write_writableState プロパティの typeof がそれぞれ functionobject であることを確認します。

これらのチェックを実装した例コードは以下の通りです。

const isWritableStream = (val) =>
  val !== null &&
  typeof val === "object" &&
  typeof val.pipe === "function" &&
  typeof val._write === "function" &&
  typeof val._writableState === "object";

この関数を、Node.js の fs モジュールを使用してテストすることができます。たとえば:

const fs = require("fs");

isWritableStream(fs.createWriteStream("test.txt")); // true

まとめ

おめでとうございます!あなたは「ストリームが書き込み可能かどうか」の実験を完了しました。あなたの技術を向上させるために、LabEx でさらに多くの実験を練習することができます。