1. ホーム
  2. javascript

[解決済み】JavaScriptのString strip()は?[重複している]。

2022-04-15 20:30:33

質問

文字列から先頭と末尾のスペースを取り除くための、クリーンで効率的なJavaScriptの実装は何ですか?

例えば

" dog"

"dog "

" dog "

" dog "

に変わってしまう。

"dog"

解決方法は?

これを使う。

if(typeof(String.prototype.trim) === "undefined")
{
    String.prototype.trim = function() 
    {
        return String(this).replace(/^\s+|\s+$/g, '');
    };
}

これで、trim 関数は文字列のファーストクラス関数として利用できるようになります。 例えば

" dog".trim() === "dog" //true

EDIT : J-Pの提案で、正規表現パターンを1つにまとめました。 また、Christophの提案により、グローバルモディファイアを追加しました。

Matthew Crumleyのアイデアで、trim関数を再作成する前にスニッフィングすることにしました。 これは、クライアントで使用されている JavaScript のバージョンがより新しく、そのため独自のネイティブな trim 関数を持っている場合に行うものです。