ホームページ >ウェブフロントエンド >jsチュートリアル >文字列スライス方法と部分文字列方法の違い
JavaScript は、クライアント側とサーバー側の両方で使用できる、動的で最も人気のあるプログラミング言語です。 JavaScript は、インタラクティブな Web ページを作成するために使用されます。 React JS、Angular JS、Node JS などの多くのフレームワークがあります。
JavaScript には、さまざまなタスクを実行するための組み込み関数が多数含まれています。文字列を操作する関数があります。 Str.slice と str.substring は、文字列を操作できる 2 つの組み込み関数です。これら 2 つの関数の機能はほぼ似ていますが、いくつかの違いがあります
このメソッドは、指定されたインデックスに基づいて文字列の一部を返します。スライスメソッドの構文は次のとおりです -
リーリーこのメソッドには、start と end という 2 つのパラメータがあります。 Start は開始するインデックスを指定し、end インデックスは返される文字列の最後のインデックスを示します。文字列を返す場合、終了インデックスは含まれません。エンディングは必要ありません。 end が指定されていない場合は、指定された開始インデックスから始まる文字列全体を返します。ここで、インデックスは「0」から始まります。
このメソッドもスライス メソッドに似ており、文字列の一部を新しい文字列として返します。このメソッドの構文は次のとおりです -
リーリーここで、start と end は 2 つのパラメータで、返される文字列のインデックスを示します。終了インデックスが指定されていない場合は、指定された開始インデックスから始まる文字列全体が返されます。文字列を返す場合、終了インデックスは含まれません。インデックスは「0」から始まります。
文字列長が 12 の文字列「Good Morning」について考えてみましょう。次の例でこれらのメソッドの機能を理解しましょう -
リーリー開始インデックスが正の場合、どちらのメソッドでも同じ出力が得られます。
リーリーここではインデックスが 5 に設定されているため、メイン文字列の 5 番目の位置から始まる文字列が返されます。
指定されたインデックスが負の場合、これら 2 つのメソッドは、以下に示すように異なる出力を生成します。
リーリーslice メソッドでは、負のインデックスが指定された場合、文字列の末尾からカウントし、そのインデックス位置から始まる文字列を返します。部分文字列内では、負の数値はすべてゼロとして扱われます。したがって、インデックス 0 から始まり、文字列全体が返されます。
どちらのメソッドも、文字列長が渡されると空の文字列を返します。
リーリー開始インデックスが終了インデックスより大きいです
リーリーSlice メソッドは空の文字列を返しますが、substring メソッドはこれらのインデックスを交換して文字列を返します。終了インデックスは除きます。
開始インデックスと終了インデックスが両方とも負の場合
リーリーSlice メソッドは、文字列の末尾から指定されたインデックスまでをカウントし、それを返します。どちらのインデックスも負であり、部分文字列メソッドはそれらをゼロとして扱うため、ゼロで始まりゼロで終わります。したがって、空の文字列が返されます。
開始インデックスが負で終了インデックスが正の場合
リーリーここでは、終了インデックスが開始インデックスの前にあるため、slice メソッドは空の文字列を返します。ただし、部分文字列方式では負のインデックスはゼロとして扱われ、0 番目のインデックスからそれを除いた 5 番目のインデックスまでが開始されます。したがって、「Good」を返します。
開始インデックスが正で終了インデックスが負の場合
リーリーSlice メソッドは出力として「Morn」を返し、Substring メソッドは「Good」を返します。 Substring メソッドは終了インデックスを 0 として扱い、開始インデックス (5) が終了インデックス (0) より大きいため、単純に位置 (0,5) を交換して文字列を返します。
次の表は、スライス方法と部分文字列方法の重要な違いを示しています -
スライス方法 |
サブストリングメソッド |
---|---|
文字列の一部を返します |
文字列の一部を抽出するためにも使用されます |
負のインデックス付けが可能で、後ろから文字列カウントを返します |
負のインデックスが指定された場合、それは 0 (ゼロ) のインデックス位置として扱われます。 |
開始インデックスが終了インデックスより大きい場合、空の文字列が返されます |
開始インデックスが終了インデックスより大きい場合は、単に位置を交換し、その結果に基づいて文字列を返します |
以上が文字列スライス方法と部分文字列方法の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。