ホームページ > ウェブフロントエンド > jsチュートリアル > 異なるプラットフォーム間で JavaScript の改行文字をどのように判断しますか?

異なるプラットフォーム間で JavaScript の改行文字をどのように判断しますか?

Susan Sarandon
リリース: 2024-11-11 00:04:02
オリジナル
245 人が閲覧しました

How Do You Determine the Newline Character in JavaScript Across Different Platforms?

JavaScript 改行の謎を明らかにする

プログラミングの分野では、とらえどころのない改行文字はコードのある行から次の行への移行を示します。 JavaScript では、このとらえどころのないエンティティが文字列の操作と書式設定において極めて重要な役割を果たします。

よくある誤解の 1 つは、JavaScript ではすべてのプラットフォームで普遍的な改行文字として「n」が君臨しているということです。しかし、現実はもっと複雑な状況を描いています。この謎を解き明かすために、探索の旅に出かけましょう。

改行文字の祖先

JavaScript 文字列は、一重引用符と二重引用符の両方を使用して構築できます。これらの引用符内に改行文字を置くと、文字列に改行が挿入されます。ただし、改行を構成する特定の文字シーケンスは、プラットフォームやオペレーティング システムによって異なる場合があります。

歴史的に、オペレーティング システムごとに異なる改行シーケンスが好まれてきました。

  • Windows : CR LF (rn)
  • Unix 系システム (含む) macOS および Linux): LF (n)

現在の改行文字の決定

残念ながら、JavaScript 自体はプラットフォーム固有の改行文字を決定する明示的な方法を提供していません。 。ただし、回避策が用意されているので、心配する必要はありません。

次のテスト スクリプトをコードに埋め込むことで、現在の環境の改行文字の秘密を明らかにできます。

function log_newline(msg, test_value) {
  if (!test_value) { 
    test_value = document.getElementById('test').value;
  }
  console.log(msg + ': ' + (test_value.match(/\r/) ? 'CR' : '')
              + ' ' + (test_value.match(/\n/) ? 'LF' : ''));
}
ログイン後にコピー

単に次のように指定します。 test_value パラメータに改行文字のみを含む文字列を追加します (または、HTML テキストエリアから値を取得するには空白のままにします)。スクリプトを実行して、プラットフォーム固有の改行文字シーケンスを表示します。

実際的な考慮事項

ほとんどの場合、現在のプラットフォームのデフォルトの改行文字を使用できます。ただし、クロスプラットフォームの互換性が最も重要な場合は、プラットフォームに依存しない方法で文字列に改行を追加することを検討してください。 1 つのオプションは、

const multilineString = `Line 1
Line 2
Line 3`;
ログイン後にコピー
のような埋め込み改行シーケンスを含む ES6 テンプレート リテラル構文を使用することです。

以上が異なるプラットフォーム間で JavaScript の改行文字をどのように判断しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート