次のコードは何をしますか?行ごとに説明してください。
x="c_name";
y=x.replace(/^\s+|\s+$/g,"");
x.replace(/ ^ \ s /)のみが指定された場合、replaceメソッドは、文字列の先頭にあるスペース文字を置き換えますが、これらの追加引数は何を意味しますか?「|」は 置換方法で「または」を意味しますか?行ごとに説明してください
次のコードは何をしますか?行ごとに説明してください。
x="c_name";
y=x.replace(/^\s+|\s+$/g,"");
x.replace(/ ^ \ s /)のみが指定された場合、replaceメソッドは、文字列の先頭にあるスペース文字を置き換えますが、これらの追加引数は何を意味しますか?「|」は 置換方法で「または」を意味しますか?行ごとに説明してください
y=x.replace(/^\s+|\s+$/g,"");
次のことを意味します。
|) :
+)空白に一致^\s+\s+$)それらを何も置き換えません。
フラグは、最初のg一致だけでなく、すべての一致を置き換えることを意味します。
つまり、文字列の先頭と末尾の空白を削除します。
文字列の先頭または末尾にある任意の数のスペースを削除します。
それは次のように読むことができます
^\s+: 先頭にいくつかのスペース|: また\s+$: 最後にいくつかのスペースg: それらすべて正規表現に関する MDN ドキュメントを参照してください。
一部の古いブラウザー (IE8-) にはトリム機能がないため、おそらくコード内にあります。
MDN ドキュメントから:
^- 入力の先頭に一致します。
\s- スペース、タブ、フォーム フィード、ライン フィード、およびその他の Unicode スペースを含む単一の空白文字に一致します。
x|y- x または y のいずれかに一致します。
+- 前の項目に 1 回以上一致します。
$- 入力の末尾に一致します。
したがって、基本的には古いブラウザ用のtrim()関数です。